0

以下の構造を書きました。

struct RGB
{
     unsigned short Red; 
     unsigned short Green;
     unsigned short Blue;
};

struct ImageBase
{
     std::string name;
     RGB array[64][64];
};

ファイル "Image.png" を取得しました。ファイルを読み取るにはどうすればよいですか (RGB 値を画面またはファイルに出力します)。

4

1 に答える 1

0

ブーストの一部であるgilを使用して、画像を読み取ることができます。

using namespace boost::gil;
rgb8_image_t input;
png_read_and_convert_image(ipath, input);

次に、画像上にビューを作成してピクセルにアクセスし、ピクセルを反復処理して標準出力に書き込みます。

rgb8_view_t src_view = view(input);

for (int y=0; y < src_view.height(); ++y) {

    rgb8_view_t::x_iterator src_it = src_view.row_begin(y);

    for (int x=0; x < src_view.width(); ++x)
        std::cout << "R=" << src_it[x][0] << " G=" << src_it[x][1] << " B=" << src_it[x][2] << std::endl;
}

gilのドキュメントはこちら:http ://www.boost.org/doc/libs/1_51_0/libs/gil/doc/index.html

于 2012-09-27T16:18:39.250 に答える