Как я могу взять BMP, который составляет 24 бита, и преобразовать его в монохромный битмап? Я не беспокоюсь о потере цветов и т. Д., И я не хочу использовать другой формат файла.Преобразование 24-битного BMP в монохромный бит в C#
ответ
Существует в основном два метода. Вы можете использовать методы Interop для чтения необработанных данных BMP и записи необработанных данных BMP для монохромного растрового изображения. Есть функции googlable, которые сделают это.
Или, лучше, вы можете использовать ImageMagickObject для преобразования изображения с помощью стехикального сглаживания.
Сделайте второй.
Если вы делаете первый, вы все равно должны использовать stocichastic dither, но вам придется реализовать его вручную.
Редактировать: Вы спросили «что означают следующие значения RGB» ... ответ заключается в том, что они становятся тем, кем вы хотите стать. ВАМ РЕШАТЬ.
Очевидным выбором является либо использование строгого порога, когда что-либо меньшее, чем X, становится черным, что-то еще становится белым, или вы можете использовать стехистальный спуск. Выберите два порога, черный порог bt
и белый порог wt
, такой как 0 < bt < wt < 255
. Затем для каждой точки выберите случайное число q
между 0.0. и 1.0. Сравните яркость пикселей ((r+g+b)/3
) до (q*(wt-bt)+bt)
. Если он больше или равен, он белый, если меньше, черный. Это даст вам приятный оттенок серого. Для большинства целей 31 и 224 являются хорошими значениями для bt и wt, но для фотографических изображений 0 и 255 может быть лучше.
- 1. Создайте монохромный BMP с битов
- 2. Преобразование JPEG в 8 бит BMP
- 3. Преобразование 64-битного файла BMP в массив в C/C++
- 4. ImageMagick Преобразование BMP с 24 бит в 16 бит Режим?
- 5. Преобразование цвета bmp в оттенки серого bmp?
- 6. Преобразование ICO в BMP
- 7. Преобразование изображения в монохромный массив байтов
- 8. Преобразование bmp в LINEAR jpeg в C++
- 9. Преобразование BMP в avi
- 10. Преобразование emf в bmp
- 11. Преобразование BMP в PCX C# Compact Framework
- 12. Монохромный битмап (1 бит) Заполнение и дополнительный 0xF0 байт
- 13. Возвращение бит исходного изображения в файл BMP
- 14. Данные изображения bmp в C
- 15. Байт для бит в BMP, получающий RGB
- 16. Чтение .bmp (24 бит) в 2D-массив
- 17. C#: Ручное преобразование бит?
- 18. Как сохранить растровое изображение, преобразованное в 1bpp в монохромный файл BMP на Compact Framework?
- 19. Преобразование BMP-файла в PDF
- 20. Преобразование последовательности бит в uint32_t в C++
- 21. 32 бит в преобразование unit64 в C++
- 22. Преобразование бит-бит в один бит
- 23. Преобразование bmp в jpg в java
- 24. преобразование байта в бит
- 25. Создать 1-битный битмап (монохромный) в PHP
- 26. 24-бит-1 бит-бит-преобразование
- 27. Преобразование изображений PHP JPG/GIF/PNG в BMP/ICO
- 28. Преобразование Png в Bmp и растровый массив
- 29. C# Преобразование отрицательного int в 11 бит
- 30. Преобразование BMP в черно-белую версию
Что означают следующие значения rgb: (1,1,1) [Один больше черного], (2097151,2097151,2097151) [На полпути между белым и черным], (4194302,4194302,4194302) [Один меньше белого]? –