Ч ОБРАБОТКА ИНФОРМАЦИИ И УПРАВЛЕНИЕ
УДК 612.8
с1о1:10.15217/1ззп1684-8853.2015.3.29
СЕГМЕНТАЦИЯ ИСХОДНЫХ СНИМКОВ ДЛЯ ФОТОМЕТРИЧЕСКОГО МЕТОДА ТРЕХМЕРНОГО СКАНИРОВАНИЯ
В. А. Кузнецова 1, ассистент
аСанкт-Петербургский государственный университет аэрокосмического приборостроения,
Санкт-Петербург, РФ
Постановка проблемы: прежде чем осуществлять вычисления градиента поверхности на основе ее снимков при различном положении источников света, необходимо исключить возможность ситуации, не соответствующей модели, используемой в методе вычисления. Наиболее эффективный путь, не требующий какой-либо предварительной обработки объекта, заключается в сегментации исходных снимков. Целью работы является определение и систематизация признаков затенений, бликов и переотражений; разработка алгоритма сегментации исходных снимков с учетом специфики фотометрического метода сканирования. Методы: экспериментальные данные получены при компьютерном моделировании исходных изображений с использованием модели отражения Фонга. Для сегментации изображений используются признаки бликов и затенений, основывающиеся на проверке линейной зависимости интенсивностей снимков, находящихся в одной плоскости, и минимизации функции отклонения исходных данных от данных, соответствующих используемой модели. Результаты: определена конфигурация фотометрического трехмерного сканера из пяти фиксированных источников света, позволяющая использовать дополнительные признаки при сегментации затенений, бликов и переотражений. За счет избыточного количества снимков гарантируется наличие как минимум трех измерений яркости в каждой точке объекта, удовлетворяющих условиям проверки. Разработан алгоритм для проверки соответствия исходных данных и модели отражения света поверхностью, используемой для вычисления, в котором для большинства видимых точек задача минимизации функции от двух переменных не требует решения или была сведена к задаче минимизации функции от одной переменной. Представлен результат сегментации для двух фигур, на одной из которых смоделированы затенения, блики и разрыв поверхности, которые часто являются трудностями для вычисления ориентации поверхности. Практическая значимость: в сравнении с аналогами разработанный алгоритм сокращает время, необходимое для сегментации всей видимой области, а также осуществляет более детальную сегментацию исходных снимков.
Ключевые слова — трехмерное сканирование, фотометрия, сегментация затенений, зеркальное отражение.
Введение
Для фотометрического метода трехмерного сканирования вычисление градиента поверхности может производиться на основе как эмпирической модели отражения света поверхностью [1-4], так и аналитической модели [5-9].
Аналитический метод [5-7] основывается на совместном решении трех уравнений для различных положений источников света:
E = K(L ■ n) = !пад K cos 0, (1)
где E — интенсивность отраженного света; L — вектор освещения; n — вектор нормали к поверхности; 1пад — интенсивность падающего света; 0 — угол между нормалью и вектором освещения. Решение системы уравнений позволяет определить градиент поверхности p, q и коэффициент отражения K для диффузно отражающих поверхностей без необходимости проводить калибровку на объекте идентичного материала. Такой подход
1 Научный руководитель — профессор кафедры информационно-сетевых технологий Санкт-Петербургского государственного университета аэрокосмического приборостроения, доктор технических наук Н. Н. Красильников.
дает больше возможностей для анализа погрешностей вычисления ориентации поверхности, так как вычисления выполняются непосредственно на основании измеренных значений яркости.
Необходимость выполнять сегментацию бликов и затенений вызвана тем, что для аналитической модели освещения вычисление ориентации поверхности в точках, не соответствующих закону отражения света поверхностью, не имеет смысла. Для эмпирической модели освещения это проявляется в отсутствии набора интенсив-ностей на эталонном объекте. Помимо отбрасывания данных, аналитическая модель позволяет подобрать набор p, q, K, в наибольшей степени соответствующий и модели отражения, и исходным данным; для эмпирической модели выбор наиближайшего набора может привести к значительным ошибкам. Необходимость сегментации обусловлена также высоким уровнем шума в затененных и близких к затененным областях [7], даже если затененный снимок может быть исключен.
В работах [9, 10] сегментация бликов и затенений осуществляется с использованием спектрального анализа света, для снимков в режиме grayscale сегментация недостаточно надежна,
в случае отклонения от аналитической модели выбирается наиболее яркий или наиболее темный пиксель [9]. Метод сегментации [11] требует значительного количества времени на решение задачи минимизации и позволяет определить только затенения на исходных снимках. Выбранная для работы конфигурация освещения [5-7] позволяет использовать дополнительные признаки для более подробной сегментации.
Определение отклонений от закона диффузного отражения
Исходными данными для алгоритма сегментации является набор снимков !0, II, II, II, в которых рассматриваются точки, принадлежащие сканируемому объекту. Конфигурация из пяти источников света [5-7] позволяет осуществлять проверку по каждой оси на наличие отхождений от диффузной модели отражения. Три снимка !0, II, II или !0, II в случае отсутствия затенений должны быть линейно зависимы, исходя из трех уравнений (1) можно выразить одно из изображений через два других:
I! + II = 2оов .
При наличии шума и возможных слабых вторичных источниках света для того, чтобы осуществлять проверку, необходимо ввести пороговую величину £пор:
¿1 (x,y) + ¿i (x,y) - 2 cos (x, y) < D,
пор"
(2)
Выполнение неравенства будет означать, что в точке нет никаких отклонений от закона диффузного отражения света. В противном случае на снимках может присутствовать затенение, блик (возможна не только диффузная составляющая) или точка будет освещена вторичным источником света. Обозначим маску Dx (и Dц аналогично Dx)
dx (x,y) = 1,
dx (x,y) = 0,
¿1 (x,y) + i1 (x,y) --2 cos (x, y)
¿1 (x,y) + ^ (x,y) --2 cos |¿o (x, y)
< D
пор
-max(Ic)
> Dnop + max(Ic)
Случайная шумовая составляющая Ic для всех точек одинакова и имеет среднеквадратичное отклонение 2стi (cos£ +1). Для конфигурации из четырех источников света должно выполняться равенство I1 +11 = I2 +12, что не позволяет определить отхождение от закона диффузного отражения света для каждой оси, т. е. вместо двух матриц Dx и Dy возможно определение только Dx | Dy, за исключением бликов и переотражений на дополнительном снимке.
Результат проверки для сферы представлен при наличии только затенений и флуктуацион-ного шума (рис. 1, а-в), т. е. точки, где dx = 0 или dy = 0, будут принадлежать затенениям на исходных снимках. Заметно, что в отмеченную область попадают также точки с низким K, граница тени не четкая. Чтобы этого избежать, можно подобрать оптимальное значение Dnop для условий, в которых происходит сканирование, но в этом случае эффективность определения переотражений снизится.
Более надежные результаты определения Dx и Dy можно получить, учитывая тот факт, что затенение, блик и переотражение проявляются в группе отчетов, расположенных рядом. Таким образом, обозначив величины
A(x, y) = ¿1 (x, y) + i1 (x, y) - 2 cos ¿0 (x, y) dR(x, y) = |A(x, y) + 0,5(A(x - 1, y) + + A(x + 1, y) + A(x, y - 1) + A(x, y + 1))|, сформулируем новое условие проверки
dx (x, y) = 1, dR (x, y) < 3Dnop + 3 max(Ic); dx (x, y) = 0 в противном случае, (3)
которое учитывает наличие затенений в соседних точках. Это позволяет значительно снизить количество ложных определений йх, например в области низких К на рис. 1. Под неверным определением йх подразумевается как ложное определение затенения, блика или переотражения, так и их пропуск.
Для диффузно отражающей поверхности сферы при ф£ = 30°, ст| = 2,08 и размере изображе-
в)
О
■ Рис. 1. Области Dx (а); Dy (б); S = S^ | S^ | S^ | S^ (в) при = 30°, а2 = 2,08 и Dnop = 12,5
Dn
10
■ Рис. 2. Количество неверных определений йх в зависимости от Дпор для сферы при = 30°, ст? = 2,08. Модель Фонга
100
50
* 04
400 300 200 100
500 600
■ Рис. 3. для сферы при = 30°, без флуктуаци-онного шума. Модель Фонга
ния 640x480 (см. рис. 1) общее количество точек, принадлежащих затенениям, Бх = 12 868, минимальное количество неверных определений йх Ыт = 2440 при оптимальном значении -Опор = 7. Общее количество точек, принадлежащих затенениям и бликам, для этой же поверхности, но имеющей зеркальную составляющую, Бх + Бргсх = 35 862, минимальное количество неверных определений йх Ыт = 3669 при оптимальном значении Лпор = 5,5 (рис. 2).
Примечательно, что величина <!н, сравниваемая с пороговой величиной по абсолютному значению в (3), отрицательна в области блика на снимке !0 (рис. 3), также отрицательное значение она будет принимать в случае самозатенений, так как на одном из смежных снимков значение яркости будет меньше условной (без самозатенения в этой же точке) яркости отраженного света. Эта информация может быть использована для дальнейшей классификации.
Сегментации области бликов, затенений и переотражений
Для сегментации изображения рассматриваются только точки, где йх = 0 или йу = 0, так как
х у
если йх = 1 & йу = 1, то в этой точке градиент поверхности может быть вычислен, исходя из значений яркости любых изображений.
Если йх = 0 & йу = 1 (или йх = 1 & йу = 0), то гарантированно может быть вычислено значение
только одного приращения, для вычисления всего градиента необходимо определить, на каком из смежных снимков присутствует затенение или блик. В большинстве случаев ситуация
dx = 0 & dy = 1 означает наличие затенения или
x у
блика на одном из смежных снимков. Вероятность пересечения зеркальных областей, областей затенения на смежных снимках мала. Случай dx = 0 & dy = 0 означает наличие затенения, бликов или переотражений на любом снимке, за исключением затенений на дополнительном снимке.
Для обработки ситуаций dx = 0 & dy = 1, dx = 1 & dy = 0, dx = 0 & dy = 0 и точного вычисления градиента поверхности необходимо исключить те снимки, из-за которых возникает отклонение от модели диффузного отражения света.
Затенения отличаются от вторичного освещения или блика тем, что яркость затененного отсчета равна нулю, в то время как вторичное освещение добавляет к яркости некоторую величину. Идеальное затенение соответствует Ik = 0, при наличии посторонних источников света и шума сравнение яркости с нулем не имеет смысла. Чуть более действенный способ — сравнение с некоторой пороговой величиной, определяющей колебания в тени, но этот подход малоэффективен при непостоянном K, так как не использует корреляцию значений яркости точек изображений в наборе.
Для того чтобы более полно описать процесс получения снимков, будем использовать следующее уравнение яркости пиксела на изображении при постоянном коэффициенте отражения без учета вторичных источников:
ik (x, у) = Sk (x, y)Lkn,
где sk — элемент матрицы затенений снимка Sk, которая имеет ту же размерность, что и изображение, и может принимать в каждой точке значение 0 или 1. Если sk(x, у) = 0, то в точке присутствует затенение и ik(x, у) обращается в ноль.
Для того чтобы определить наиболее вероятное расположение затенений на снимках, следует подобрать S0, S-, sj, S2, Sj, наиболее удовлетворяющие значениям яркости пикселей. В общем случае необходимо минимизировать величину
N-1 2
R(x, у) = ^ (Sk (x, y)Lkn - ik (x, y)) ,
k=0
где N — количество изображений. Результатом для каждой точки является как набор SosSsS , так и вектор нормали n к поверхности, который при отсутствии бликов или переотражений с определенной точностью близок к искомому значению ориентации поверхности. Значение S0 практически в каждой точке должно равняться 1, но может принимать нулевые значения на границах объекта.
4
5
6
8
9
d
Множество ¿о, ¿1, в]1, ¿2, конечно, и область возможных решений может быть также сокращена за счет использования результатов проверки Dx (рис. 4, а), DI,. Например, комбинация
X у
1,0,1,0,1 при йх = 1 & йу = 1 невозможна.
При йх = 0 & йу = 1 достаточно рассмотреть четыре варианта множества во,в],в],¿2,¿2: (1,1,1,0,0), (1,1,1,0,1), (1,1,1,1,0) и (1,1,1,1,1).
Отмеченные ¿г, = 0, в] = 0 области соответствуют случаю затенения. Точки, отмеченные в, = 1 & в] = 1, для которых Бх = 0, принадлежат блику или переотражению или ложно определены в результате высокого уровня шума. На рис. 4, б точки, соответствующие ситуации в0, в,, в], в2, в2 = (1,1,1,1,1), изображены белыми, соответствующие ^, г, , в2, = (1,0,1,1,1) — темно-серыми, в0, в1, ¿;:jL, в2, в1; = (1,0,1,1,1) — светло-серыми.
Важно отметить, что для области йх = 0 & йу = 1 величина Я представляет собой функцию одной переменной р, так как йу = 1 позволяет вычислить значение д.
Согласно выдвинутому предположению [9], при наличии блика из рассмотрения может быть исключен самый яркий пиксель, в случае затенения — самый темный. Причем рассматривается модель отражения Торренса — Спарроу [8, 9], согласно которой зеркальная составляющая проявляется лишь на некоторых участках, т. е. используется возможность сканировать поверх-
■ Рис. 4. Результат сегментации для сферы при = 30°: а — область Dx; б — результат сегментации области точек йх = 0 & йу = 1. Модель Фонга
ность, рассматривая только диффузно отражающие участки поверхности. Проанализировав результат, представленный на рис. 3, 4, аналогичный вывод можно сделать и для модели Фонга.
Для ситуации йх = 0 & йу = 1 (йх = 1 & йу = 0) при в0, £1, sLL, в2, в2 = (1,1,1,1,1), т. е. при блике на одном из снимков I!, I! (рис. 5, а), при вычислении градиента р из ^ исключается самый яркий пиксель. Блик на снимке !0 может быть определен значительно проще. Достаточно сопоставить проверку
, , ч , ¿1 (х, у) + ^ (х, у) - ¿2 (х, у) -ЛХу0 (Х у) =1 1 - -
- ¿2 (х, у) < £>пор + тах(1с);
¿ху0 (х у) = 0
в противном случае
с Dx | Dy. Сравнивая отклонение от диффузной модели отражения Dx, Dy с дополнительным снимком !0 и без него Dxy0, в силу отсутствия на нем затенений могут быть выделены блики на снимке !0 (рис. 5, а-в). На рис. 5, в представлена область Dxy0 для фигуры, полученной в результате вращения овала Кассини, область точек йх = 0 на рис. 5, б включает в себя блик на снимке !0.
Полученная в области бликов ориентация поверхности должна быть такова, что нормаль совпадает с вектором
Уь =
Ьк - 2
\Ьк - 2
где 2 — единичный вектор, направленный вдоль оси 2. Важно отметить, что переотражения не будут удовлетворять этому условию.
Среди отмеченных областей затенений может быть выделена подгруппа самозатенений. Наличие самозатенения не зависит от ориентации поверхности, а обусловлено взаимным расположением частей фигуры, поэ тому при вк = 0 условное значение яркости Ь^й > 0 будет сигнализировать о самозатенении. Но в этом случае необходимо вычислить градиент или использовать значения п, в которых был установлен минимум Я. Наиболее простой вариант — определять
самозатенения по отрицательному значению СЯ. На рис. 5, б белыми отмечены области, для которых СЯ> 0, серыми — области, для которых СЯ < 0.
Сегментация области йх = 0 & йу = 0
В области точек сСх = 0 & сСу = 0 при ^ = 1 необходимо рассматривать все 16 возможных вариантов множества в1, sLL, в2, в2, но, например, в1 = 0 & = 0 будет означать наличие трех линейно зависимых снимков, т. е. вычисление градиента не может быть гарантировано. Поэтому 7 вариантов искомого множества: (1,0,0,0,0), (1,0,0,0,1), (1,0,0,1,0), (1,0,0,1,1), (1,0,1,0,0), (1,1,0,0,0), (1,1,1,0,0), — которые сигнализируют о затенениях на обоих смежных снимках, будут означать недоступность точки для реконструкции.
Любая ситуация (1,0,1,0,1), (1,1,0,0,1), (1,0,1,1,0), (1,1,0,1,0) при СЯ > 0 означает наличие затенений на двух снимках; из-за невозможности пересечения области блика и затенения вычисление осуществляется по незатененным снимкам. На рис. 6 этой ситуации соответствует область, закрашенная бордовым цветом.
Ситуации (1,0,1,1,1), (1,1,0,1,1), (1,1,1,1,0), (1,1,1,0,1) при СЯ < 0 будут означать наличие самозатенений, области которых могут пересекаться с областью бликов на другой паре смежных снимков, остальные затенения с бликами пересекаться не могут. Ситуация, сигнализирующая о самозатенении, не позволяет в этот же момент определить наличие блика на другом снимке в этой точке. В этом случае для вычисления из трех незатененных пикселей исключается самый яркий. На рис. 6 этой ситуации соответствует область, закрашенная красным.
Ситуация (1,1,1,1,1) будет сигнализировать о блике на снимке !0. На рис. 6 этой ситуации соответствует область белого цвета. Зеленым изо-
Литература
1. Woodham R. J. Photometric Method for Determining Surface Orientation from Multiple Images // Optical Engineering. 1980. Vol. 19. N 1. P. 139-144.
2. Woodham R. J. Gradient and Curvature from the Photometric-Stereo Method, Including Local Confidence Estimation // Journal of Optical Society of America. Nov. 1994. Vol. 11. N 11. P. 3050-3068. doi:10.1364/JOSAA.11.003050
3. Hertzmann A., Seitz S. M. Example-Based Photometric Stereo: Shape Reconstruction with General Varying BDRFs // IEEE Transactions on Pattern Analysis and Machine Intelligence. Aug. 2005. Vol. 27. N 8. P. 1254-1264. doi:10.1109/ TPAMI.2009.102
■ Рис. 6. Окончательная сегментация для овала Кас-сини
бражены блики на снимках салатовым —
блики на снимках !2,
Все точки фигуры, полученной вращением овала Кассини, доступны для вычисления градиента, но необходимо учитывать, что в слабоосвещенных областях, граничащих с затенениями, погрешность вычисления будет значительно выше по сравнению с погрешностью в остальных областях.
Заключение
Представленный алгоритм сегментации затенений и бликов в большей степени базируется на информации о взаимном расположении источников света и корреляции значений яркости в наборе. Несмотря на то, что в обоих случаях ключевым фактором, влияющим на качество сегментации, является использование избыточного количества снимков, количество снимков в наборе более пяти не позволяет добиться значительного улучшения в качестве, при этом усложняя процесс сегментации. Использование алгоритма не просто позволяет отбрасывать самый яркий или темный пиксел, а в большинстве случаев указывает конкретную ситуацию на конкретном снимке. Но даже при сокращении множества возможных вариантов сегментация может занять значительное время.
4. Horn B. Height and Gradient from Shading // International Journal of Computer Vision. 1990. Vol. 5. N 1. P. 37-75.
5. Красильников Н. Н., Красильникова О. И. Исследование погрешностей определения координаты глубины при 3D-сканировании методом, основанным на диффузном отражении света // Информационно-управляющие системы. 2012. № 3(58). С. 2-8.
6. Красильников Н. Н. Метод получения 3D-изобра-жений, основанный на диффузном отражении света сканируемыми объектами // Информационно-управляющие системы. 2009. № 6(43). С. 7-11.
7. Кузнецов В. А. Прогнозирование ошибки вычисления ориентации поверхности, обусловленной квантованием, для метода трехмерного сканирования, основанного на диффузном отражении света // На-
учная сессия ГУАП: сб. докл. В 3 ч. Ч. 1. Технические науки. СПб.: ГУАП, 2013. С. 89-91.
8. Solomon F., Ikeuchi K. Extracting the Shape and Roughness of Specular Lobe Objects Using Four Light Photometric Stereo // IEEE Transactions on Pattern Analysis and Machine Intelligence. Apr. 1996. Vol. 18. N 4. P. 449-454.
9. Barsky S., Petrou M. The 4-source Photometric Stereo Technique for Three-Dimensional Surfaces in the Presence of Highlights and Shadows // IEEE Transactions on Pattern Analysis and Machine Intelli-
gence. Oct. 2003. Vol. 25. N 10. P. 1239-1252. doi:10.1109/TPAMI.2003.1233898
10. Hernandez C., Vogiatzis G., Cipolla R. Overcoming Shadows in 3-source Photometric Stereo // IEEE Transactions on Pattern Analysis and Machine Intelligence. Feb. 2011. Vol. 33. N 2. P. 419-426.
11. Chandraker M., Agarwal S., Kriegman D. Shadow-cuts: Photometric Stereo with Shadows //Proc. of IEEE Conf. on Computer Vision and Pattern Recognition. 2007. doi:10.1109/CVPR.2007.383288
UDC 612.8
doi:10.15217/issn1684-8853.2015.3.29
Image Segmentation Technique for Photometric Stereo
Kuznetcov V. A.a, Assistant Professor, [email protected]
aSaint-Petersburg State University of Aerospace Instrumentation, 67, B. Morskaia St., 190000, Saint-Petersburg, Russian Federation
Purpose: Previous to surface gradient calculation by photometric stereo, it is necessary to prevent any inconsistency between the used reflectance model and the input data. The most effective way free from any object pre-processing is the fragmentation of the source images. The purpose of the work is to define and systematize the features of shadows, highlights and reflections, and to develop a segmentation algorithm which would take into account the specificity of photometric stereo. Methods: The experimental data were obtained by computer simulation of source images using the Phong reflection model. For image segmentation, we used the features of highlights and shading based on verified linear dependence of the intensities of images from the same plane and on the minimized function of the deviation between the input data and the model-fitting data. Results: A photometric 3D scanner configuration is defined, consisting of five fixed light sources. With this configuration, you can use additional features of shadows, interreflections and highlights during the image segmentation. The redundant number of images ensures that at least three intensities at each visible point are well verified. An algorithm was developed for checking the conformity between the input data and the light reflection model used for the calculation. In this algorithm, for the majority of the visible points, the problem of two-variable function minimization needs no solution or can be reduced to the problem of single variable function minimization. A result of the segmentation is shown for two objects. One of these objects is modeled with highlights and surface gaps, which often make it difficult to calculate the surface orientation. Practical relevance: Compared to its analogues, the developed algorithm reduces the time required for the visible area segmentation and provides more elaborate segmentation of the source images.
Keywords — Photometric Stereo, Image Segmentation, Shadows, Highlights.
References
1. Woodham R. J. Photometric Method for Determining Surface Orientation from Multiple Images. Optical Engineering, 1980, vol. 19, no. 1, pp. 139-144.
2. Woodham R. J. Gradient and Curvature from the Photometric-Stereo Method, Including Local Confidence Estimation. Journal of Optical Society of America, November 1994, vol. 11, no. 11, pp. 3050-3068. doi:10.1364/JOSAA.11.003050
3. Hertzmann A. and Seitz S. M. Example-Based Photometric Stereo: Shape Reconstruction with General Varying BDRFs. IEEE Transactions on Pattern Analysis and Machine Intelligence, August 2005, vol. 27, no. 8, pp. 1254-1264. doi:10.1109/TPAMI.2009.102
4. Horn B. Height and Gradient from Shading. International Journal of Computer Vision, 1990, vol. 5, no. 1, pp. 37-75.
5. Krasilnikov N. N., Krasilnikova O. I. The Investigation of Measurement Errors of Depth Coordinate during 3D Scanning by the Method based on Diffuse Reflection of Light. Informatsionno-upravliaiushchie sistemy [Information and Control Systems], 2012, no. 3(58), pp. 2-8 (In Russian).
6. Krasilnikov N. N. A Method of 3D Scanning Based on Scanned Objects' Light Radiosity. Informatsionno-upravli-aiushchie sistemy [Information and Control Systems], 2009, no. 6(43), pp. 7-11 (In Russian)
7. Kuznetcov V. A. The Maximum Calculation Error of Surface Orientation, Received from The Method, Based on Surface Reflection Model. Nauchnaia Sessiia GUAP. Ch. 1. Tekh-nicheskie Nauki [Reports Collection of Scientific Session SUAI. Ch. 1. Engineering Science], Saint-Petersburg, 2013, pp. 89-91 (In Russian).
8. Solomon F. and Ikeuchi K. Extracting the Shape and Roughness of Specular Lobe Objects Using four Light Photometric Stereo. IEEE Transactions on Pattern Analysis and Machine Intelligence, April 1996, vol. 18, no. 4, pp. 449-454.
9. Barsky S., Petrou M. The 4-source Photometric Stereo Technique for Three-dimensional Surfaces in the Presence of Highlights and Shadows. IEEE Transactions on Pattern Analysis and Machine Intelligence, October 2003, vol. 25, no. 10, pp. 1239-1252. doi:10.1109/TPAMI.2003.1233898
10. Hernandez C., Vogiatzis G., Cipolla R. Overcoming Shadows in 3-source Photometric Stereo. IEEE Transactions on Pattern Analysis and Machine Intelligence, February 2011, vol. 33, no. 2, pp. 419-426.
11. Chandraker M., Agarwal S., Kriegman D. Shadowcuts: Photometric Stereo with Shadows. Proc. of IEEE Conf. on Computer Vision and Pattern Recognition, 2007. doi:10.1109/ CVPR.2007.383288