Здравствуйте, AcidTheProgrammer, Вы писали:
ATP>Здравствуйте, Reunion, Вы писали:
R>>Здравствуйте, AcidTheProgrammer, Вы писали:
ATP>>>И что я там должен посмотреть...?
ATP>>>Бред он и есть бред.... С какой стати для нахождения ближайжего цвета, я должен пользоваться весами для яркочти.
ATP>>>Например если мы ищем для некого зеленого цвета, похожий:
ATP>>>Ясно, что если в палитре есть Красный по яркости не отличающийся от него и зеленый отличающийся на чудь-чудь, твой способ найдет именно красный — что является бредом. Попробуй со своим методом хороший дехеринг написать. Я например написал, и не один, и точно могу сказать, что метрика с весами по яркости хорошо будет работать только для полутоновых изображений.
R>>Я не говорил, что там все правильно. Я говорю, что результат одинаковый и при f = sqrt ((rp — ri) * (rp — ri) + (gp — gi) * (gp — gi) + (bp — bi) * (bp — bi)) и при f = 30 * (rp — ri) * (rp — ri) + 59 * (gp — gi) * (gp — gi) * 11 * (bp — bi) * (bp — bi). И оба неправильные. Я хочу нормальный способ. Если есть работающий пример, делающий все классно, поделись — посмотрю что там...
ATP>
Ну вы же не написали что хотите сделать. Как я могу догадаться... Что значит неправильный результат??????
ATP>Формула с SQRT или без него, правильная.
ATP>Опишпте проблему поподробней... Что вы делаете, скриншот...., что должно получиться
Описываю. Есть картинка из которой надо сделать витраж. Картинка бъется на области и считается средний цвет внутри каждой области. Но стекла не бывают любых цветов (по крайней мере в моем случае, у меня их число ограничено) — т.е. есть набор цветов стекол. Надо подобрать стекло для каждой области исходя из среднего цвета.
Есть голубой1 (170, 196, 200). В палитре есть серый (200, 200, 200) и голубой2 (197, 255, 249).
(170-197)*(170-197)+(196-255)*(196-255)+(200-249)*(200-249) = 6611
(170-200)*(170-200)+(196-200)*(196-200)+(200-200)*(200-200) = 916
голубой1 меняется на серый, а не на голубой2. А мне надо наоборот...