Поиск объекта по цвету — rgb


Download 144.65 Kb.
Sana18.11.2023
Hajmi144.65 Kb.
#1785208
Bog'liq
0wmVMspzNclHV6-fg2T0K6P5-Z9vNW7G


654-20 группа Мирзазода Мухаммадали
1-Deadline
Поиск объекта по цвету

Поиск объекта по цвету — RGB.
Самый распространённый способ выделить объект — это цвет.

Цвет — это свойство тел отражать или испускать видимое излучение определенного спектрального состава и интенсивности.

Везде и всюду нас окружают цветовые индикаторы.
Светофоры, белые и жёлтые линии дорожной разметки, корпоративные цвета продуктов, дорожные указатели и различные индикаторы.

Например, для слабовидящих людей приклеивают жёлтые круги на дверях магазинов (жёлтый – последний цвет, которые они видят);


чтобы не перепутать, например, стеклянную витрину со стеклянной дверью.

Так же появляются жёлтые полосы на ступеньках пешеходных переходов. Покрываются жёлтой краской бордюры. Этот цвет один из самых ярких и людям с плохим зрением становится легче ориентироваться в городе.


Одной из важных проблем поиска по цвету — это влияние множества факторов.

Например, освещённость. Нельзя так же забывать, что видимый цвет — это результат взаимодействия спектра излучаемого света и поверхности. Т.е. если белый лист освещать светом красной лампочки, то и лист будет казаться красным.



Трихроматическая теория (сетчатка глаза имеет 3 вида рецепторов света, ответственных за цветное зрение) полагает, что достаточно всего трёх чисел, чтобы описать цвет (красный, синий, зелёный).

Т.е. используя три значения R, G, B


Цветовые пространства бывают линейные и нелинейные.
К линейным относится RGB
Нелинейные: HSV, LAB

Удобство HSV состоит в том, что координаты выбраны с учетом человеческого восприятия:


Hue (Тон)
Saturation(Насыщенность),
Value (Intensity) (Интенсивность)
Рассмотрим практическую задачу системы машинного зрения.
сама задача прозвучала на робофоруме
и упрощенно её можно сформулировать так:
Над колесом игорной рулетки установлена камера.
Требуется программа распознавания номера, в который попал шарик.


Исходные данные:
* шарик лежит во внешнем углу ячейки.
* номера на всех колесах располагаются одинаково.
* цвет номеров строго чередуется (красное-чёрное)
* номер 0 (Zero) зелёного цвета.
Один из возможных алгоритмов решения задачи — это найти зелёный сектор Zero и отсчитать от него сектор в котором детектируется белый шарик.
Т.о., в первом приближении, задача состоит в нахождении цветных объектов на картинке.
Я порылся в интернете и нашёл вот такую фотографию колеса игорной рулетки:

Попробуем с ней поработать.
Напишем программу, которая считывает картинку (в качестве первого параметра), разбивает её на слои (cvSplit()), над каждым из которых можно проделать пороговое преобразование , причём значения интервалов удобным образом изменяются с помощью ползунков.
Результирующее значение выводится в окошке «rgb and» и представляет собой логическое И — cvAnd() между получившимися пороговыми картинками.

13. Найдите и отделите дату рождения гражданина от необязательного паспорта


from pprint import pprint

import cv2,re


import pytesseract
from pytesseract import Output

pytesseract.pytesseract.tesseract_cmd = """C:\Program Files\Tesseract-OCR\\tesseract.exe"""


img = cv2.imread('aF0Dc.jpg')
d = pytesseract.image_to_data(img, output_type=Output.DICT)
keys = list(d.keys())
# date_pattern = '([A-Za-z0-9]+[.-_])*[A-Za-z0-9]+@[A-Za-z0-9-]+(\.[A-Z|a-z]{2,})+'
# # date_pattern = "[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9]"
date_pattern = "[0-9][0-9]/[0-9][0-9]/[0-9][0-9][0-9][0-9]"
# pprint(d)
n_boxes = len(d['text'])
for i in range(n_boxes):
if int(d['conf'][i]) > 60:
if re.match(date_pattern, d['text'][i]):
(x, y, w, h) = (d['left'][i], d['top'][i], d['width'][i], d['height'][i])
img = cv2.rectangle(img, (x , y ), (x + w, y + h ), (0, 255, 0), 2)

cv2.imshow('img', img)


cv2.waitKey(0)



Список литературы:


1. А. Буйвал, М. Любимов, А. Габдуллин
«Обнаружение и локализация дорожных знаков на
основе данных камеры и лидара» // 11-я
Международная конференция по машинному зрению
(ICMV 2018) - Мюнхен, Германия 2018.
2. Кордтс М., Омран М., Рамос С., Рехфельд Т.,
Энцвайлер М., Бененсон Р., Франке У., Рот С., Шиле
Б. «Набор данных городских пейзажей для понимания
семантической городской сцены» / М. Coordts. 2016г.
3. Хэншуан З., Цзяньпин С., Сяоцзюань В., Сяоган В.,
Цзяя Дж. «Сеть пирамидального разбора сцены» / З.
Download 144.65 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling