Я ищу библиотеку C++ для обработки изображений. Мне нужна библиотека для порога фото PPM (цветная фотография). Должен ли я писать свой собственный код? Ребята, что вы думаете?Библиотеки обработки изображений C++
ответ
Вы можете использовать библиотеку Boost GIL. Он чрезвычайно мощный и универсальный и может действительно удовлетворить все ваши потребности. (ну, да, это толчок :).
Magick++ может помочь. Это библиотечная версия ImageMagick.
Очень хорошая библиотека GD2
Эта библиотека имеет несколько языков привязок, в том числе C (который совместим с C++, конечно). Легко построить GD как статическую или динамическую библиотеку с фактически любым компилятором C++, включая GCC и Visual C++, а также предварительно созданные двоичные файлы доступны через Интернет. В отличие от библиотеки изображений Boost, она позволяет загружать/сохранять изображения из/в память, а не только на жесткий диск.
Все вышеуказанные варианты должны быть в состоянии сделать то, что вам нужно.
Я хотел бы добавить OpenCV в список. Это быстрая кросс-платформенная библиотека компьютерного зрения с обширной загрузкой изображений, сохранением и обработкой. Он написан на C, но у него есть сплошной интерфейс C++, который я использовал в прошлом.
Это, как говорится: Reading/writing PPMs is straight-forward, так что если вам нужно только читать и порождать, вы должны обязательно подумать об этом. Это привело бы к чтению байтов PPM в память, оттенков серого путем усреднения цветовых каналов RGB (обратите внимание, что усреднение каналов RGB - это один, очень простой, метод для оттенков серого, есть more), затем порог и запись.
Simd Library Это бесплатная библиотека обработки изображений с открытым исходным кодом, предназначенная для программистов на C и C++. Он предоставляет множество полезных алгоритмов высокой производительности для обработки изображений, таких как: преобразование формата пикселей, масштабирование изображения и фильтрация, извлечение статистической информации из изображений, обнаружение движения, обнаружение объектов (каскады классификаторов HAAR и LBP) и классификация, нейронная сеть.
Алгоритмы оптимизированы с использованием различных расширений SIMD CPU. В частности, библиотека поддерживает следующие расширения процессора: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 и AVX-512 для x86/x64, VMX (Altivec) и VSX (Power7) для PowerPC, NEON для ARM.
В Simd Library есть API C, а также содержит полезные классы и функции C++ для облегчения доступа к C API. Библиотека поддерживает динамические и статические ссылки, 32-битные и 64-битные компиляторы Windows и Linux, MSVS, G ++ и Clang, MSVS и CMake.
P.S. Я участвую в разработке этого проекта.
Кажется, классная библиотека! Вы тоже автор?Если это так, вы должны, вероятно, упомянуть об этом в ответе (см. [Раскрытие принадлежности] (http://stackoverflow.com/help/behavior)) –
Я не знал этого правила. – ErmIg
В библиотеке Simd есть функция, которая объединила бы два изображения по вертикали, чтобы (500x500, 500x500) становилось (500x1000)? Я еще не изучил C++, и я пытаюсь найти библиотеку, которая может это сделать (для использования в android). Можете ли вы помочь – rupinderjeet
The CImg Library также является популярным выбором. Он действительно прост в использовании, облегчен и уже имеет множество базовых и продвинутых операторов обработки изображений.
- 1. Библиотеки обработки изображений для Android
- 2. Библиотеки обработки изображений с быстрой кросс-платформенной C/C++
- 3. Библиотеки C++ для сегментации изображений
- 4. Библиотеки обработки изображений Dicom в языке Objective C
- 5. C# библиотека для обработки изображений
- 6. C# Руководство по проектированию для библиотеки обработки общей библиотеки
- 7. Простые библиотеки загрузки изображений
- 8. быстрых C/C++ изменения размеров изображений библиотеки
- 9. Компиляция разделяемой библиотеки Matlab с помощью инструмента обработки изображений
- 10. Библиотека обработки изображений Python
- 11. Ошибка обработки библиотеки c в python?
- 12. Рисунок гистограммы - Инструменты обработки изображений
- 13. Как использовать IPLib библиотеки обработки изображений Intel в vC++?
- 14. Какие в настоящее время лучшие библиотеки обработки изображений для Java?
- 15. Использование обработки изображений Fiji как библиотеки в Java
- 16. Библиотека изображений на Java для обработки изображений и обрезки изображений
- 17. Turbo-C++ в библиотеке обработки изображений DosBox?
- 18. Java или C для обработки изображений
- 19. Visual C++ книга для обработки цифровых изображений
- 20. MATLAB vs Visual C++ для обработки изображений
- 21. Образ обработки изображений
- 22. линия Упрощение обработки изображений
- 23. Улучшение скорости обработки изображений
- 24. Использование обработки звука библиотеки
- 25. Библиотеки обработки видео Python?
- 26. Библиотеки обработки естественного языка
- 27. библиотеки для обработки текста
- 28. Библиотеки параллельной обработки Python
- 29. Библиотеки предварительной обработки документов
- 30. .NET Библиотеки изображений
Я считаю, что повышение GIL также позволяет записывать/читать в/из памяти. – jiggunjer