Кто-нибудь знает имя метода, используемого процессорами изображений (например, Photoshop или Gimp), чтобы выбрать регион с похожими цветами? Кроме того, может ли кто-нибудь указать какую-либо ссылку для объяснения этого метода (с кодом C++, если это возможно)?Выбор области цвета по аппроксимации
ответ
Если вам интересно, это может быть пример проверки того, похож ли цвет на другой. Он также использует толерантность как волшебную палочку от gimp и paint.net.
Однако этот пример сравнивает разницу в стоимости вместо разницы в цвете или легкости.
/*\ function to check if the color at this position is similar to the one you chose
|* Parameters:
|* int color - the value of the color of choice
|* int x - position x of the pixel
|* int y - position y of the pixel
|* float tolerance - how much this pixels color can differ to still be considered similar
\*/
bool isSimilar(int color, int x, int y, float tolerance)
{
// calculate difference between your color and the max value color can have
int diffMaxColor = 0xFFFFFF - color;
// set the minimum difference between your color and the minimum value of color
int diffMinColor = color;
// pseudo function to get color (could return 'colorMap[y * width + x];')
int chkColor = getColor(x, y);
// now checking whether or not the color of the pixel is in the range between max and min with tolerance
if(chkColor > (color + (diffMaxColor * tolerance)) || chkColor < ((1 - tolerance) * diffMinColor))
{
// the color is outside our tolerated range
return false;
}
// the color is inside our tolerated range
return true;
}
спасибо за образец кода. У меня только один вопрос: если у меня есть три цветовых компонента (красный, зеленый, синий), как я могу оценить значение для первого параметра (цвет int)? –
Теперь я знаю, что вы имеете в виду. параметр int color - это просто цвет, который вы хотите сравнить с текущими пикселями. С волшебной палочкой этот параметр равен цвету вашего первого пикселя, который вы нажали. –
- 1. Выбор цвета по заданным координатам
- 2. Выбор цвета по дереву цветов
- 3. Выбор цвета не работает по назначению
- 4. iPhone выбор цвета
- 5. Обнаружение области красного цвета
- 6. методы аппроксимации
- 7. Мой выбор цвета jQuery
- 8. Выбор точки и выбор области круга
- 9. Выбор профиля по умолчанию по умолчанию на основе области
- 10. RichTextBox выбор и выбор цвета не работает
- 11. Выбор области действия
- 12. Выбор области на фото
- 13. Выбор цвета с редактором
- 14. display.js выбор цвета фона
- 15. Android: простой выбор цвета
- 16. WP7 выбор цвета
- 17. Выбор цвета градиента Div
- 18. JTable - выбор цвета линии
- 19. Выбор цвета с непрозрачностью
- 20. UIDate Выбор цвета фона
- 21. Выбор цвета в угловом2
- 22. LibGDX - Выбор цвета
- 23. Выбор цвета imageview android
- 24. TabBar Controller Выбор цвета
- 25. Метеор случайный выбор цвета
- 26. Выбор Название цвета неизменен
- 27. jQuery цветной выбор цвета
- 28. Выбор цвета в openGL
- 29. Инвертировать цвета области в Xlib
- 30. Выбор цвета (цветовая палитра), отображающий все цвета
Он якобы использует простой алгоритм заливки, как здесь http://www.dailyfreecode.com/code/flood-fill-algorithm-698.aspx с расчетом схожести как расстояние между двумя цветами в RGB пространстве. – SGrebenkin
Большое спасибо, вот что я ищу. –