Я хочу преобразовать png изображение в gif. Для этого я читаю данные каждого пикселя из этого png-изображения, перерисовывая его в HTML-холст. Затем я удалил альфа-канал из этих данных изображения png. Наконец, я квантовал массив пикселей на 256 цветовых палитр. Теперь, чтобы построить образ gif, я должен теперь сопоставить каждый пиксель с его ближайшим цветом в палитре. Я сравнил евклидово расстояние между пикселями и каждым цветом в палитре. Это занимает очень много времени, плюс я получаю очень плохое качество gif. Каков оптимальный способ сопоставления каждого пикселя изображения в gif-палитре?Как сопоставить значение rgb каждого пикселя с предопределенной палитрой?
ответ
Попробуйте использовать цветовое пространство HSV вместо пространства RGB.
Заканчивать этот вопрос:
Calculate distance between colors in HSV space
«расстояние» А на ВПГ-пространстве представляет собой лучше, что наши меры глаза как «расстояние» при сравнении цвета. Вы можете попробовать и поиграть, применив различные веса к цветам оттенка, насыщенности и значения. Наш глаз имеет 20-кратное количество рецепторов для яркого/темного распознавания, как для распознавания цвета, поэтому попробуйте дать Value-part немного больший вес.
Для исполнительной части: вы можете хорошо управлять работой цветового приближения параллельно, так как каждый пиксель не зависит от всех остальных.
И наконец: 256 цветов довольно низки, поэтому не ожидайте отличного качества изображения. Вы уменьшаете 16.700.000 цветов до 256, помните об этом.
- 1. JS генерировать RGB каждого пикселя в изображении
- 2. Получите значение RGB каждого пикселя из файла bmp
- 3. PHP - Найти ближайший RGB к предопределенной RGB из списка
- 4. imageJ как получить значение пикселя rgb?
- 5. Как установить значение RGB пикселя, в
- 6. Как создать изображение с RGB-значением каждого пикселя
- 7. OpenCV: как заполнить изображение rgb, имеющее значения для каждого из цветов RGB для каждого пикселя?
- 8. Как получить значение RGB для пикселя с использованием CGContext?
- 9. Как читать данные пикселя RGB на iPhone
- 10. X11: преобразовать значение пикселя в RGB
- 11. Должен ли я рассматривать значения rgb пикселя как одно значение?
- 12. Как изменить значение RGB каждого пикселя на растровое изображение с помощью python?
- 13. Как я могу прочитать значение RGB данного пикселя в Python?
- 14. как получить значение RGB пикселя внутри рабочей области формы
- 15. Как получить значение RGB пикселя из объекта CGImageRef?
- 16. Как фактически отображается значение пикселя (RGB) на экране
- 17. Формат пикселя RGB в freetype
- 18. Как сопоставить отрицательные значения с компонентом rgb?
- 19. Поляризация изображения - как найти среднее значение для каждого значения RGB
- 20. Как изменить цвет одной переменной на другой цвет с предопределенной цветовой палитрой с помощью javascript
- 21. Чтобы получить значение RGB для каждого пикселя из элемента SVG rect
- 22. Импортировать значение RGB каждого пикселя в изображении в 1-мерный массив
- 23. Как изменить значение компонента rgb изображения
- 24. JavaScript Изменение значения RGB для одного пикселя
- 25. Получите значение отдельного пикселя
- 26. Использование PIL для открытия изображения с палитрой и сохранения этого изображения с той же палитрой
- 27. JavaFX показать значение RGB для пикселя в ImageView
- 28. как построить гистограмму с использованием значения пикселя RGB?
- 29. Как получить значения RGB для каждого пикселя в BMP с помощью Qt?
- 30. Получение цветового индекса пикселей из TIFF с палитрой
Я пробовал цветное пространство L * a * b *, которое лучше HSL HSV, но это тоже не принесло хорошего результата. – gnikesh