СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №5/2015
ИНЖЕНЕРНЫЕ РЕШЕНИЯ 54 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 5 2015 500 520 540 560 580 600 620 700 490 480 380 470 460 0,8 0,9 0,7 0,6 0,5 0,4 y х 0,3 0,2 0,1 0,0 0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 нию CIE (www.cie.co.at) . Для преобразо- вания используются формулы (1) – (3), взятые из открытого источника [2]: X = (–0,14282) × R + (1,54924) × G + + (–0,95641) × B, (1) Y = (–0,32466) × R + (1,57837) × G + + (–0,73191) × B, (2) Z = (–0,68202) × R + (0,77073) × G + + (0,56332) × B. (3) Численные коэффициенты в этих формулах, очевидно, учитывают особен- ности частотных характеристик кана- лов датчика TCS3414CS, а также, возмож- но, спектр излучения светодиода актив- ной подсветки модуля I2C Color Sensor. Затем из полученных значений X, Y, Z, используя приведённые нижеформулы (4) и (5), программа вычисляет коорди- наты цвета (x, y), однозначно характе- ризующие цвет исследуемого объекта. x = X/(X + Y + Z), (4) y = Y/(X + Y + Z). (5) Координаты цвета (x, y) определяют положение цвета объекта на так назы- ваемой плоской диаграмме цветности CIExy, показанной на рисунке 5. При различных значениях усиления датчи- ка, расстояния между датчиком и иссле- дуемой поверхностью, интенсивности подсветки, измеренные датчиком зна- чения R, G, B для одного и того же объек- та будут разными, однако вычисленные в результате координаты цвета (x, y) останутся практически неизменными, если спектральный состав излучения подсветки также не изменяется. Алгоритм распознавания цвета пред- полагает предварительную пользова- тельскую калибровку измерителя для каждого i-го образца, подлежащего рас- познаванию. Для этого образца в устрой- стве измеряются параметры R i , G i , B i , затем производится вычисление вели- чин X i , Y i , Z i и вычисление цветовых координат (x i , y i ). Значения последних округляются до заданного порога точно- сти и записываются в ЭСППЗУ, форми- руя набор данных с некоторым поряд- ковым номером, известным управля- ющей программе. При распознавании цвета у исследуемого образца в таком же порядке производятся измерения, вычисляются координаты (x ′ i , y ′ i ), кото- рые также округляются ипоследователь- но сравниваются со всемихранящимися в ЭСППЗУ наборами данных до фикса- ции совпадений с точностьюдо констант dxиdy. Решение о совпадениицвета при- нимается, еслипри сравнении выполня- ются одновременно два условия: |x i – x ′ i | dx, (6) |y i – y ′ i | dy. (7) Результатом найденного совпадения является порядковый номер набора данных в ЭСППЗУ, соответствующий ранее откалиброванному цвету. Конкретные числовые значения dx и dy в управляющей программе задают- ся для достижения требуемого балан- са между вероятностью ложного рас- познавания неоткалиброванного цвета и вероятностью ложного нераспозна- вания откалиброванного цвета с учё- том погрешности измерений. Необходимо отметить, что одних координат цвета (x, y) недостаточно для однозначной идентификации цве- та объекта. Приведённые выше форму- лы не учитывают такой параметр цвета, как яркость. Без учёта яркости различ- ные цвета ′ , иногда противоположные для человеческого глаза, на диаграм- ме цветности (x, y) могут иметь весь- ма близкие координаты. В результате алгоритм, различающий цвета ′ только по значениям (x, y), во многих случаях будет давать ошибки распознавания. С целью усовершенствования алго- ритма, реализованного согласноформу- лам (1) – (5) (версия управляющей про- граммы1.0), в него была добавлена ещё одна ветвь сравнения. Выходное значе- ние АЦП в суммарном канале Clear дат- чика было условно сопоставлено ярко- сти исследуемого объекта. В качестве базового цвета, относительно ярко- сти которого оценивается яркость всех остальных, используется цвет с макси- мальной яркостью. Такой цвет находит- ся опытным путём при сравнении зна- чений результатов АЦП в канале Clear вручную для всех калибруемых цветов, подлежащих последующему распознава- нию. Из используемого набора образцов максимальное значение яркости было зафиксировано у образца белого цве- та. Таким образом, для усовершенство- ванного алгоритма, помимо координат (x i , y i ), в ходе пользовательской кали- бровки устройством сначала измеряет- ся и записывается в ЭСППЗУ значение результата АЦПв канале Clear для белого цвета C бел . Далее для каждого последую- щего калибруемого цвета также измеря- ется значение результата АЦПС i в канале Clear, а затем вычисляется и записывает- ся в ЭСППЗУ отношение этого значения к С бел , которое всегда меньше единицы: c i = C бел / C i . (8) При распознавании цвета исследуе- мого объекта измеренное для него зна- чение результата АЦП C ′ i в канале Clear последовательно сравнивается с про- изведением (c i × C бел ) для всех храни- мых в ЭСППЗУ значений c i до фикса- ции совпадения с точностью до dC i . То есть решение о совпадении в этой вет- ви алгоритма принимается, если выпол- няется условие: |(c i × C бел ) – C ′ i | dC i . (9) Для белого цвета решение о совпа- дении принимается, если выполняет- ся условие: |C бел – C ′ бел | dC бел , (10) где dC i = w × C i , (11) dC бел = w × C бел , (12) а w – константа, задаваемая для дости- жения требуемого баланса между веро- ятностьюложного распознавания неот- калиброванной яркости и вероятностью ложного нераспознавания откалибро- ванной яркости, с учётомпогрешности измерений. Какуюименноформулу – (9) или (10) – использовать для сравнения, управляющая программа решает в зави- симости от порядкового номера набора параметров в ЭСППЗУ, поскольку в про- грамме жёстко задано, что белому цвету сопоставляется первый по порядку раз- мещения в памяти набор параметров Рис. 5. Диаграмма цветности CIExy
RkJQdWJsaXNoZXIy MTQ4NjUy