2013-12-05 3 views
0

Есть ли способ взять файл изображения (bmp, png или что-то еще) и превратить его в массив или хотя бы получить значение rgb для пикселя? Если нет, можете ли вы сказать мне хорошие библиотеки для этого?Файл изображения C++ в массив

Благодаря

ответ

1

Используйте OpenCV, чтобы прочитать изображение в объект Mat. И вы можете получить каждый пиксель и его значение rgb, которое вы хотите от Mat.

+0

Не могли бы вы дать мне ссылку на это сообщение? – APCoding

+0

А что такое объект Mat? – APCoding

+0

@ user3055772 http://opencv.org/ –

2

Если вы хотите поддерживать все виды форматов, используйте OpenCV. OpenCV - многофункциональный (и, соответственно, тяжелый) инструмент для обработки изображений. Он также содержит целую кучу типов данных, а также примитивы обработки изображений и видения.

Если вы предпочитаете легкую альтернативу, я рекомендую LodePNG, где требуется только скопировать два файла, чтобы получить возможность читать и писать изображения. Однако он поддерживает только PNG и BMP. This thread обсуждает дальнейшие альтернативы. Эти альтернативы обычно дают вам 2D-массивы для изображений без правильных типов данных или дополнительных инструментов обработки.

+2

Существует ['Magick ++'] (http://www.imagemagick.org/Magick++/). –

Смежные вопросы