, чтобы читать файлы bmp, мы можем использовать это http://msdn.microsoft.com/en-us/library/dd183376(VS.85).aspx в качестве файла заголовка, а затем получить триплеты rgb. Как получить триглеты rgb jpeg-файла, есть ли такой файл заголовка. Пожалуйста, поделитесь ссылкой, если таковая имеется.Прочитать RGB триплеты файлов JPEG в C
ответ
Формат файла JPEG не хранит триплеты rgb напрямую, но использует какое-то сжатие изображения. Файл фактически содержит блоки из 64 (если я правильно помню) пикселей, которые приписываются косинусным рисунком, определяющим фактические цвета.
Вы действительно должны использовать библиотеку (libjpeg, imagemagick, gd, ... например, в зависимости от вашего варианта использования), чтобы читать и декодировать файлы и генерировать триглеты rgb в памяти.
Посмотрите эту библиотеку: libjpeg. Эта библиотека реализует кодирование JPEG, декодирование, и транскодирование.
В соответствии с ответом this question on MSDN вы можете использовать компонент GDI +, который может загружать не только BMP, но и JPG и другие форматы изображений. Из него вы получите растровое изображение памяти.
Здесь an example о том, как это сделать.
- 1. Обмен Jpeg RGB-каналами (RGB-> BGR)
- 2. Преобразование RGB триплетов в триплеты LAB с использованием skimage.color.rgb2lab()
- 3. Конвертировать JPEG в градациях серого в RGB JPEG
- 4. Преобразование JPEG из RGB в HSL в C
- 5. Чтение файлов PPM Значения RGB C++
- 6. Обработка поврежденных JPEG-файлов в C#
- 7. Извлечение jpeg-файлов из файла в C
- 8. Magick ++ Преобразование JPEG из CMYK в RGB Colorspace
- 9. Извлечение RGB из изображения JPEG, используя libjepg
- 10. чтение файла jpeg в C#
- 11. JPEG: YCrCb <-> RGB точность преобразования
- 12. Как прочитать таблицу квантования jpeg?
- 13. Есть ли способ «прочитать» gif/jpeg в C#
- 14. Факторинг больших чисел в триплеты
- 15. Эффективность сжатия JPEG Jpeg
- 16. Объединение файлов JPEG в MP4
- 17. Прочитать только один цвет RGB в октаве
- 18. Преобразование цветового пространства JPEG (Adobe RGB в sRGB) в Linux
- 19. Кодировать массив на jpeg-образ в C++
- 20. Как извлечь каналы RGB из jpeg-изображения в R?
- 21. сохранение rgb char * в jpeg изображение с использованием libjpeg
- 22. JPEG: Преобразование RGB в YCbCr и точность выборки
- 23. Буфер RGB в буфер JPEG, что здесь не так?
- 24. JPEG не будет отображаться в IE8 (но это RGB)
- 25. значения RGB Поиск определенного изображения JPEG в R
- 26. Определите триплеты заглавных букв
- 27. Считайте триплеты со следующим ограничением
- 28. Project Euler # 9 (пифагорейские триплеты) в Clojure
- 29. C++ прочитать два входных файлов по-разному
- 30. Идентификация цветового профиля jpeg в C#
http://stackoverflow.com/a/16785094/193892 - правильный ответ, на мой взгляд. –
Забавно, что сама ссылка, о которой вы указали, говорит о поддержке JPEG и PNG (флаги BI_JPEG и BI_PNG) – mvp
@mvp, true! Мистер, вы должны внимательно прочитать свою собственную ссылку ... –