-1
png 이미지의 픽셀 rgb/ga 정보를 png ++ 라이브러리를 사용하여 행렬에로드하려고 시도 중입니다. (순간 작동하지 않습니다)픽셀 값, png ++, C++ 읽기
내 코드 :
#include <iostream>
#include <png++/image.hpp>
#include <png++/rgb_pixel.hpp>
int main(int argc, const char * argv[]) {
const std::string path="img_03.png";
png::image< png::basic_rgb_pixel <unsigned char> > pic(path);
pixel=pic.get_pixel(0, 0);
pixelp = &pixel;
std::cout << "value=" << pic[10][10].red << std::endl; //output: '?'
std::cout << "value=" << pixel.red << std::endl; //nothing
std::cout << "pointer=" << pixelp << std::endl; //delivers adress
pic.read(path);
std::cout << "value=" << pic[10][10].red << std::endl; //nothing
pic.write("picOutput.png"); //same picture
return 0;
}
그러나, 이러한 방법 중 어느 것도 각 픽셀의 RGB 값을 얻기 위해 작동하지 않습니다. 각 픽셀의 rgb/ga 정보를 얻는 또 다른 방법이 있다면 그것을 언급하십시오.
라인 pic.write("picOutput.png");
은 라인 pic.read(path)
에로드 된 동일한 핀 번호를 전달합니다. 이것은 제가 C++에 익숙해지고, 가능한 한 제 코드를 비판하는 개인적인 연습입니다.
감사합니다.
전에 사람들이 위로 도약하고 아래로 소리 시작 매뉴얼의 대부분이 아님을 유의하시기 바랍니다 "의 <조어 삭제> 설명서를 잘 읽고". – user4581301
내 문제의 종류입니다. 나는 소스에 대해서만 Stackexchange를 가지고있다. – Tuni
다행히도 png ++의 작가는 SO에 관한 반 규칙적이다. 이게 효과가 있을지 모르겠지만, 우리가 그에게 깃발을 꽂을 수 있는지를 알 수 있습니다 : @Alex – user4581301