Как я могу читать / писать изображения в C ++, используя только boost / standard library? - PullRequest
4 голосов
/ 19 марта 2012

Возможно ли это?Неважно, в каком формате изображение, но я должен быть в состоянии открыть его, прочитать данные пикселей в какой-то массив, создать новое изображение, используя измененный набор данных пикселей.

Спасибо!

Ответы [ 4 ]

4 голосов
/ 19 марта 2012

Boost.GIL имеет хорошее видеоурок , в котором показано, как читать / записывать и обрабатывать необработанные данные изображений очень общим, но эффективным способом.

0 голосов
/ 26 февраля 2014

Я предлагаю CImg . Эта библиотека чрезвычайно проста в использовании. Вам нужно только включить заголовочный файл в ваш код и установить некоторые параметры при компиляции, и все! Я использовал CImg с MingW и GCC.

0 голосов
/ 22 марта 2012

Я предлагаю формат изображения TARGA для ваших нужд.Вы просто читаете / записываете несколько значений в заголовке, а остальное - несжатый массив данных пикселей RGBA.Вам даже не понадобится Boost!

0 голосов
/ 19 марта 2012

Вам нужен код для кодирования и декодирования форматов, которые вы хотите поддерживать. Вы можете сделать это самостоятельно (не совсем идеально / практично), вы можете встроить библиотеки кодирования / декодирования (например, libpng) или встроить библиотеки изображений, такие как DevIL.

Boost, похоже, включает в себя какую-то библиотеку доступа к изображениям, известную как Boost.GIL . Я действительно не знаю много об этом, хотя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...