Спектр матрицы и длина волны

Всего 62 сообщ. | Показаны 1 - 20
Спектр матрицы и длина волны
Спектр CCD-матрицы (например зеленого цвета, например 8-ми битного) это график где по оси Х числа от 0 до 255, а по Y количество пикселей с соответствующими значениями, т.е. напр кол-во нулей в матрице 10, кол-во 1 - 20 и т.д.

Спектр осветительного леда (напр у меня) такой

Здесь по оси Х уже длина волны, а по Y интенсивность излучения в каких то относительных единицах.

А вот спектральная чувствительность моей матрицы (здесь не со всем ясно что именно по оси Y - но вопрос не в этом, это частный вопрос)


Следующая мысль: спектрометр может определить спектральный состав какого-либо освещения, где естественно по оси Х будет отложена длина волны. Вероятно можно и какое-либо фото разложить в спектр где по оси Х будет длина волны.

Вот три картинки лайтрума, они отличаются только положением Temp



Смещение синего относительно зеленого и красного по оси Х выглядит так будто по оси Х отложена длина волны. Как это возможно? Что это за гистограмма, что там отложено по оси Х? Что меняет параметр Temp на уровне чисел в матрицах?
Re[tur91]:
бб это левелсы в системе кординат где каналы по спектру не пересекаються (например в профиле CIE RGB построеном на радужных цветах).
или channel mixer в любой другой системе кординат где пересекаються.

гистограмы быдлорум кажысь рисует в профиле ProPhotoRGB. тоесть они менее насыщеные чем на самом деле. по x там яркость а по y площадь

temp показывает точку на стандартной хромотичной диаграмме ЦИЕ для которой на выходе левелсы будут равными R=G=B. естесно уже используя заданый профиль фотика что б перегнать от каналов матрицы в XYZ. т.к. хромотичная диаграмма рисуеться в XYZ.
Re[tur91]:
У автора такая каша в голове...
Re[Edikkai]:
да еще какая )
Re[Edikkai]:
скоро у меня такая-же будет.
Re[tur91]:
L4m3r, спасибо, вроде бы стало чуток яснее.

[quot]У автора такая каша в голове...[/quot]Точно, именно так, каша. Я рад что это сразу стало ясно, значит не напрасно пришел, надеюсь что здесь мне помогут, разъяснят. Дело в том что я не фотограф и никогда им не был, все эти понятия от меня всегда были далеки. А случилось вот что.
У меня на работе начали новый проект отбраковка таблеток на производственной линии, т.е. камера снимает сверху конвейер по которому движутся (часто плотно соприкасаясь) таблетки, фотофреймы обрабатываются программой и в случае если какая то таблетка отличается от эталона конвейер останавливается. По началу мое дело было маленькое написать программу по построению эталона и сравнения с ним. Когда я в общих чертах это сделал, то заметил что снимки нашей машины (у нас все отдельно: объектив, матрица, электроника) низкого качества и я полез разбираться (пока есть немного времени) в чем дело. Кроме того машина должна делать полноценные снимки (показывать их на мониторе, записывать в файл). Вопросов у меня много, надеюсь на вашу снисходительность.

Вот электронщик шлет мне бинарный файл исходных данных. На сколько я понимаю сначала надо сделать дебаризацию, уже сделал ее. Что дальше? ББ? Но я все еще плохо понимаю это, т.е. каков алгоритм здесь. Что делает процессор в мыльнице? Я сейчас говорю об обычной фотографии, она тоже нужна, а в реальном времени может быть будет достаточно одного зеленого.
Re[tur91]:
Пытается отгадать (на автомате), или сравнивает с эталоном (вручную по 18% серой карте) и понимает в какую сторону компенсировать цветовую температуру. В вашем случае - перед запуском настройка по эталону (при условии, что освещение не будет меняться.
Re[tur91]:
может быть достаточно сравнивать поканально
Re[tur91]:
http://www.amaзon.com/Industrial-Image-Processing-Quality-Manufacturing/dp/3540664106

з на z исправить
Re[tur91]:
исходное фото фото в профиле фотика.
для таблэтки чё там мерееться цвет и однородноcть? можно на этом и остановиться если есть образцовая таблэтка.
цвет берёться R/G. B/G усредняеться. если освещение не стабильное то около таблэтки ставиться бэлая бумажка и делиться на неё.

а для "обычного фото" потом перегоняеться его в какой либо рабочий профиль умножением на матрицу 3х3 (обычно для этого фотик калибруеться по 3м заданым цветам промеряным колориметром откудо решаеться матрица)
если кривые спектров извесны точные то можно за глаза решить матрицу такую что эти кривые * матрицу ~= кривые XYZ

потом гамма корекция если надо. нуи фсё дальше уже разукрастка.

бб уже будет содержаться в матрице профиля ,если фотик колиброван то фото будет вылезать такое как было на самом деле. но если очень охото крутить бб в ручную то проще всего взять рабочий профиль CIE RGB и крутить там просто левелсы. в других профилях придёться подкручивать фсю матрицу что в ручную весьма не удобно. по скольку в других профилях крастный канал соотвецвеут не только крастному цвету а какой то смеси и т.д.
Re[tur91]:
Еще раз напоминаю что я мало что понимаю, со мной надо говорить как с чайником, подробно все растолковывать, если можно. кратко я не понимаю.

L4m3r,
Эталонная таблетка набирается из первоначальных таблеток на конвейере. Эталон это контур и по поверхности таблетки среднее по R + девиация по R и то же самое по G и по B. Освещение складывается из внешнего (возможно переменного) и освещения установки (4 или более леда, график его спектра на первом вверху рисунке).

[quot]исходное фото фото в профиле фотика[/quot]не понял
[quot]цвет берёться R/G. B/G усредняеться[/quot]зачем делить?

[quot]а для "обычного фото" потом перегоняеться его в какой либо рабочий профиль умножением на матрицу 3х3 (обычно для этого фотик калибруеться по 3м заданым цветам промеряным колориметром откудо решаеться матрица)
если кривые спектров извесны точные то можно за глаза решить матрицу такую что эти кривые * матрицу ~= кривые XYZ [/quot]Извиняюсь, ничего не понял. Можно поподробнее пожалуйста.

дальше тоже не понимаю. что такое матрица профиля?

Возможно я слишком рано пришел на форум, мне надо сначала усвоить какие то азы. Какие?

[quot]бб это левелсы в системе кординат где каналы по спектру не пересекаються[/quot]это я тоже не понял.

Edikkai, мне такую книгу рано читать. По своему небольшому опыту могу сказать что несколько фраз на форуме могут прояснить больше чем целая книга. Я в сейчас питаюсь отдельными статьями, куда гугл выведет, причем на русском, так быстрее.

faterdom,
[quot]понимает в какую сторону компенсировать цветовую температуру[/quot]Я спрашивал про алгоритм.
Вот сфотографировали белый лист, получили три матрицы. Синяя у нас чуть выше уровня шумов, красная побольше, зеленая еще больше. И что? Что дальше? Почему синяя такая маленькая (графики могу привести в след раз, дня через 3) хотя лед дает как раз всплеск на синем (см верхний рис в теме) ?
Дальше напр фотографируем при том же освещении несколько таблеток разных цветов и что? Что конкретно делаем, как учитываем данные матриц белого листа?
Re[tur91]:
Это не тот форум где ищут советов в области машинного зрения.
Re[tur91]:
в профиле фотика значит в тех спектрах которые там вверху нарисованы т.е. спектры леда помножить на спектры матрици.

а "обычное фото" в спектрах глаза (что б оно было такое как видит глаз) тоесть в XYZ. они связаны через матрицу (гуглить color matrix) , он же цветовои профиль. для сравнения с еталоном это фсё не нужно, это нужно чтоб воспроизвести фото точно так как видит глаз.


делить очевидно R таблэтки на r бумажки, G/g, B/b


R/G B/G это если без бумажки чтоб засекать вариацию цвета.

бб ну прецтавь что спектры на графиках такие что они не пересекаються. т.е. красный кончается потом начинается зелёный, он кончается потом начинаеться синий. тогда бб регулируеться просто интенсивностью каждого цвета. если они пересекаются то надо ещё вычесть пересечение обратно это и будет умножение на матрицу. опять жэ это что б сохранить фото точно так как видит глаз т.е чтоб цветопрофиль неменялся при изменении бб.
Re[tur91]:
L4m3r,
[quot]для сравнения с еталоном это фсё не нужно, это нужно чтоб воспроизвести фото точно так как видит глаз.[/quot]вот это я понимаю.

что значит спектры пересекаются я тоже конечно понимаю.
А что бы я хотел понять для начала?
Вот пусть спектры не пересекаются у CCD-матрицы (т.е. не такие как у меня). Кроме того они по форме одинаковые и ровно захватывают всю область видимого спектра. Сфотографировали белый лист, получили три матрицы R G B. Спектр освещения как у меня в самом верху. Что теперь? Как делать ББ?

вот из вики
Бала́нс бе́лого цве́та — один из параметров метода передачи цветного изображения, определяющий соответствие цветовой гаммы изображения объекта цветовой гамме объекта съёмки.

Что конкретно имеется ввиду под цветовой гаммой изображения в терминах левелс R G B моих трех матриц при съемке белого листа? И как определить цветовую гамму объекта съёмки? Соответствие тоже слово загадочное.
Возможно я тороплюсь, все эти вопросы станут ясны когда пойму что такое цветовой профиль.

L4m3r, спасибо. Даже самые простые ответы мне помогают просто расставить акценты. Я в этом своем нынешнем деле совершенно один.

Edikkai, все мои вопросы про потроха мыльницы. Все просто: если Вы видите что у меня каша в голове, то покажите мне это. Мне это поможет расставить все по местам, я в этом нуждаюсь. Я бы, например, так и поступил если бы кто то нуждался и я бы мог помочь.
Re[tur91]:
ну есь исходный спектр (например лампочка при которои снимали) и есь какой хотим получить (например D65й монитор на котором смотрим) . чтоб перегнать бб надо очевидно поделить принятыи спектр на спектр лампочки по компонентно и умножить на спектр монитора.
если полосы не пересекаються то и просто по компонентно RGB картинка делиться на изображение бумажки при этои лампочке. соотвецно бумажка становится белая R=G=B=1 ну и т п.
а потом умножить на изображене бумажки при свете монитора (это зделает оптически сам монитор по себе при показе картинки)


если в общем случаи то ну есть опорныи цвета

RGB1 * CMX = XYZ1
RGB2 * CMX = XYZ2
RGB3 * CMX = XYZ3

при калибровки фотика RGB снимается с фотика, XYZ с колориметра, отсюдо решаеться матрица CMX профиль фотика.

теперь хотим сместить балланс в S раз (в XYZ)
( .* это поэлементное умножение , * матричное)

RGB4 *CMX = XYZ1.*S
RGB5 *CMX = XYZ2.*S
RGB6 *CMX = XYZ3.*S

отсюдово решаеться RGB456

даеле

RGB456 * XXX = RGB123
отсюдово решаеться матрица XXX

в итоги

RGB456 * XXX * CMX = XYZ123 вот и сместили балланс
или жэ
RGB456 * CMXs = XYZ123

если фсё посокращать то останеться CMXs = CMX * diag(S) * inv(CMX)
diag соотвецно матрица с диагональю S а остальные нули a inv обратная матрица

ровно точно такая же батва будет при использовании промежуточного профиля в которм каналы разнесены

RGB * CMX1 * diag(S) * CMX2 = XYZ
CMX1 переводит из профиля фотика в CIE а CMX2 переводит из CIE во что надо на выходе

Re[tur91]:
L4m3r, спасибо за разъяснения, сейчас хоть что то начал понимать. У меня займет время пока я с этим разберусь.

Сейчас открылась совсем другая проблема. Наш объектив висит над конвейером на высоте H ~= 330 mm. Ширина конвейера L = 80 mm. Есть таблетки с диаметром D = 9 mm и высотой h = 8 mm.


Примерно это в реальности выглядит во так


Толщина или высота таблетки видится объективом и занимает на фото b мм. А задача у меня номер один точно находить контуры таблеток. На одном из этапов этого я делаю обрезание по порогу. Понятно надеюсь я объясняю (если нет, то могу подробней, если хотите). Так вот для точного определения контура очень мешает это b, хорошо бы если его вообще не было. Например если таблетка по середине, то получается такое фото (эти все фото сделаны не на нашей машине, я ими всего лишь передаю свою проблему)


А вот график как b зависит от Н (при указанных D и h)


Есть большие ограничения на высоту объектива над конвейером, ограничения от меня не зависящие.
Вопрос: можно ли каким-нибудь образом получить картинку без полей у контуров с небольшой высоты? Может быть объектив должен быть с иными характеристиками?

Вот еще картинка для примера

У некоторых таблеток видна нижняя часть контура что неприемлемо.
Re[tur91]:
если высота таблэтки извесна то извесной величинои являеться как шырина этого вылезания так и его яркость.. так и геометрическое искажение формы в проекции.

чё оно должно мешать? строиться гистограма и вырезаеться по порогу вокруг максимума етои гистограмы.. осветитель желательно, поставить как можно более перпендикулярно конвееру и фсё. т.е как можно выше и м.б с линзой чтоб светил узким лучём.. тогда боковые стенки будут совсем неосвещены и чорные

щё такая бадяга может вылезти как не ровное распределение света по кадру ну это бумажка опять же ложиться только уже во весь кадр размером,
фоткаеться и фсё на неё делиться только уже делиться пиксель на пиксель. это называеться общеизвесно flat field correction.
за одно давиться винетирование обьектива, пыль на матрице и прочая щняга.

объектив можно зделать.. если зделать его диаметром с конвеер и макро проекцию 1:1.. есть и готовые объективы с прямои проекцией спецально для съёмки мелких деталеи , телецентрические называються.. но они стоют милион.. диаметр объектива должен быть неменьше конвеера очевидно
Re[tur91]:
L4m3r,
Проблема в том, что таблетки идут плотно соприкасаясь. Одна таблетка может закрывать частично нижнюю кромку другой. Могут получаться области сплошь залитые одним цветом. Если бы таблетки шли одна за другой раздельно, то тогда можно было бы каждый раз пересчитывать геометрию контура, но и в этом случае понадобились бы какие то специальные опыты по выявлению реальных характеристик пересчета. Тот расчет, который я привел для b предельно прост. В реальности было бы все сложнее, т.е. на этот расчет нельзя было бы опираться. Желательно также быть свободным от высоты таблетки, т.е. какие бы новые таблетки не запустили по конвейеру система разделяет их и определяет контур каждой. Короче эта идея геометрического пересчета контура что то мне не по душе, хотя я ее и не отбрасываю совершенно.
Может быть разделить линию на две по 40 мм каждая или на три даже. Тогда наверное можно найти подходящий телецентрический объектив за приемлемую цену?

Выше я привел график b vs H, а расчет не привел ввиду его простоты, так как линзу взял точечную. А если учесть диаметр входного зрачка и может быть простейшую конструкцию телецентрического объектива, то какой будет расчет и график b vs D для конкретной высоты объектива над конвейером H и высоты таблетки h? Вот понимания этого у меня нет. Сколько я ни читаю как о стенку горох. Можно наверное телецентричность задать простой оптической схемой из которой станет ясен этот механизм и ход лучей в нем.
График b vs D нужен чтобы прикинуть размеры всей установки, (там не мало параметров) а также определить какой объектив нужен. В конце надо все оптимизировать. Короче нужен хоть какой то оценочный расчет. Он помог бы сдвинуть дело с мертвой точки.

Может быть есть промежуточный вариант, т.е. объектив достаточно высока над конвейером и он не совсем телецентрический, может быть полу-телецентрический?
Re[tur91]:
Вроде сказали Кадеин под запретом с 1 июня...
Re[tur91]:
Цитата:
от: tur91
Толщина или высота таблетки видится объективом и занимает на фото b мм. А задача у меня номер один точно находить контуры таблеток.


Зачем ?
Вы не авторизованы

Пожалуйста, авторизуйтесь, чтоб иметь доступ к полному функционалу сайта

Обратная связь

Здесь вы можете оставить свои контактные данные, чтобы мы могли связаться с вами.