Графическая накладка для измерения размеров элементов при помощи устройства видеоконтроля
GRAPHIC OVERLAY FOR MEASURING THE SIZE OF ELEMENTS USING A VIDEO MONITORING APPARATUS

Перекрестная ссылка на родственные заявки
[0001] Настоящая заявка является частичным продолжением и ссылается на приоритет патентной заявки США №15/018628, поданной 8 февраля 2016 года, и озаглавленной "Method and device for measuring features on or near an object", содержание которой полностью включено в настоящее описание посредством ссылки и которая ссылается на приоритет предварительной заявки на патент США №62/232866 с тем же названием, поданной 25 сентября 2015 года, содержание которой полностью включено в настоящее описание посредством ссылки и которая является частичным продолжением и ссылается на приоритет патентной заявки США №14/660464, поданной 17 марта 2015 г. и озаглавленной "Method and device for displaying a two-dimensional image of a viewed object simultaneously with an image depicting the three-dimensional geometry of the viewed object", содержание которой полностью включено в настоящий документ путем ссылки и которая является частичным продолжением и ссылается на приоритет как (1) патентной заявки США №14/108976, поданной 17 декабря 2013 года, и озаглавленной "Method and device for automatically identifying the deepest point on the surface of on anomaly", содержание которой полностью включено в данный документ путем ссылки, так и (2) патентной заявки США №13/040 678, поданной 4 марта 2011 г. и озаглавленной "Method and device for displaying a three-dimensional view of the surface of a viewed object", в настоящее время патент США №9013469, содержание которой полностью включено в данный документ путем ссылки.
Предпосылки создания изобретения
[0002] Предмет изобретения, раскрываемый в данном документе, относится к графической накладке для измерения размеров элементов с использованием устройства видеоконтроля.
[0003] Для контроля поверхности объекта с целью выявления и анализа аномалий (например, ямок или выбоин) на объекте, которые могли возникнуть, например, при повреждении, износе, коррозии или неправильной установке, можно использовать устройства видеоконтроля (или оптические устройства), такие как видеоэндоскопы или бороскопы. Устройство видеоконтроля может использоваться для захвата и отображения двумерного изображения поверхности рассматриваемого объекта, показывающего аномалию, для определения размеров аномалии на поверхности. Это двумерное изображение поверхности можно использовать для создания трехмерных данных поверхности, которые обеспечивают трехмерные координаты (например, (x, у, z)) множества точек на поверхности.
[0004] В некоторых случаях, однако, пользователю может быть трудно поместить курсор точно в нужную позицию на двумерном изображении для выполнения измерения. Например, при измерении глубины может быть сложно визуально определить самую глубокую точку в выбоине или ямке и поместить в нее курсор, просто рассматривая двумерное изображение или даже трехмерный вид облака точек. Аналогично, при измерении расстояния, например, поперек паза или сварного шва, может быть трудно визуально определить те точки на каждой стороне паза или сварного шва, где линия между точками является нормальной (например, не диагональной) к каждой из стенок, и разместить курсоры в этих точках, чтобы получить точную ширину паза или сварного шва. Точно так же, пользователю может быть трудно точно разместить курсоры на закругленной кромке турбинной лопатки.
Сущность изобретения
[0005] Раскрывается графическая накладка для измерения размеров элементов с использованием устройства видеоконтроля. Преимущество, которое может быть реализовано при использовании на практике некоторых раскрываемых форм осуществления изобретения, заключается в том, что могут быть выполнены точные измерения элементов объекта.
[0006] В одной из форм осуществления изобретения раскрывается способ измерения элемента. Способ включает в себя этапы отображения на мониторе изображения рассматриваемого объекта; определения при помощи центрального процессора трехмерных координат множества точек на поверхности рассматриваемого объекта; размещения на изображении при помощи указывающего устройства одного или более измерительных курсоров; определения при помощи центрального процессора точки измерения, соответствующей позиции по меньшей мере одного измерительного курсора; определения при помощи центрального процессора плоскости кромки, причем плоскость кромки проходит через точку измерения; определения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и плоскостью кромки; сравнения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и плоскостью кромки с заранее заданным порогом расстояния; и отображения графической накладки плоскости кромки на пикселях на изображении, связанных с множеством точек на поверхности рассматриваемого объекта, имеющих расстояние до плоскости кромки, которое меньше заранее заданного порога расстояния.
[0007] В другой форме осуществления изобретения способ включает в себя этапы отображения на мониторе изображения рассматриваемого объекта; определения при помощи центрального процессора трехмерных координат множества точек на поверхности рассматриваемого объекта; размещения на изображении при помощи указывающего устройства первого измерительного курсора и второго измерительного курсора; определения при помощи центрального процессора первой точки измерения, соответствующей позиции первого измерительного курсора; определения при помощи центрального процессора второй точки измерения, соответствующей позиции второго измерительного курсора; определения при помощи центрального процессора трехмерной линии между первой точкой измерения и второй точкой измерения; определения при помощи центрального процессора первой плоскости кромки; причем первая плоскость кромки является нормальной к трехмерной линии и проходит через первую точку измерения; определения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и первой плоскостью кромки; сравнения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и первой плоскостью кромки с заранее заданным порогом расстояния; и отображения графической накладки первой плоскости кромки на пикселях на изображении, связанных с множеством точек на поверхности рассматриваемого объекта, имеющих расстояние до первой плоскости кромки, которое меньше заранее заданного порога расстояния.
[0008] В еще одной форме осуществления способ включает в себя этапы отображения на мониторе изображения рассматриваемого объекта; определения при помощи центрального процессора трехмерных координат множества точек на поверхности рассматриваемого объекта; помещения при помощи указывающего устройства первого измерительного курсора, второго измерительного курсора и третьего измерительного курсора на изображение; определения при помощи центрального процессора первой точки измерения, соответствующей позиции первого измерительного курсора; определения при помощи центрального процессора второй точки измерения, соответствующей позиции второго измерительного курсора; определения при помощи центрального процессора третьей точки измерения, соответствующей позиции третьего измерительного курсора; определения при помощи центрального процессора трехмерной базовой линии между первой точкой измерения и второй точкой измерения; определения при помощи центрального процессора трехмерной линии расстояния между третьей точкой измерения и трехмерной базовой линией; определения при помощи центрального процессора первой плоскости кромки, причем первая плоскость кромки нормальна к трехмерной линии расстояния и проходит через первую точку измерения и вторую точку измерения; определения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и первой плоскостью кромки; сравнения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и первой плоскостью кромки с заданным пороговым значением расстояния; и отображения графической накладки первой плоскости кромки на пикселях изображения, связанных с множеством точек на поверхности рассматриваемого объекта, имеющих расстояние до первой плоскости кромки, которое меньше заранее заданного порога расстояния.
[0009] В еще одной форме осуществления способ включает в себя этапы отображения на мониторе изображения рассматриваемого объекта; определения при помощи центрального процессора трехмерных координат множества точек на поверхности рассматриваемого объекта; выбора при помощи указывающего устройства одной или более точек базовой поверхности из множества точек на поверхности рассматриваемого объекта; определения при помощи центрального процессора базовой поверхности, причем базовая поверхность определяется на основе одной или более точек базовой поверхности; размещения на изображении с помощью указывающего устройства измерительного курсора; определения при помощи центрального процессора точки измерения, соответствующей позиции измерительного курсора; определения при помощи центрального процессора плоскости глубины, причем плоскость глубины параллельна базовой поверхности и проходит через точку измерения; определения, при помощи центрального процессора, расстояния между множеством точек на поверхности рассматриваемого объекта и плоскостью глубины; сравнения при помощи центрального процессора расстояния между множеством точек на поверхности рассматриваемого объекта и плоскостью глубины с заранее заданным порогом расстояния; и отображения графической накладки плоскости глубины на пикселях на изображении, связанных с множеством точек на поверхности рассматриваемого объекта, имеющих расстояние до плоскости глубины, которое меньше заранее заданного порога расстояния.
[0010] Вышеприведенные формы осуществления изобретения являются только примерами. Другие формы осуществления изобретения находятся в пределах объема раскрываемого предмета изобретения.
Краткое описание чертежей
[0011] Подробное описание изобретения представлено со ссылкой на определенные формы его осуществления, некоторые из которых проиллюстрированы на прилагаемых чертежах. Следует отметить, однако, что чертежи иллюстрируют только некоторые формы осуществления настоящего изобретения и поэтому не должны рассматриваться как ограничивающие его объем, поскольку объем раскрытого предмета охватывает также другие формы осуществления. Чертежи не обязательно выполнены в масштабе, при этом основной упор обычно делается на иллюстрации особенностей определенных форм осуществления изобретения. На чертежах подобные номера позиций используются для обозначения подобных частей на разных видах.
[0012] Фиг. 1 - блок-схема приводимого в качестве примера устройства видеоконтроля.
[0013] Фиг. 2 - полученное устройством видеоконтроля в примере осуществления изобретения иллюстративное изображение поверхности рассматриваемого объекта, имеющего аномалию.
[0014] Фиг. 3 - блок-схема приводимого в качестве примера способа автоматического определения самой глубокой точки на поверхности аномалии на рассматриваемом объекте, показанном на изображении фиг. 2.
[0015] Фиг. 4 иллюстрирует базовую поверхность, определяемую устройством видеоконтроля.
[0016] Фиг. 5 иллюстрирует пример исследуемой области, определяемой устройством видеоконтроля.
[0017] Фиг. 6 иллюстрирует другой пример исследуемой области, определяемой устройством видеоконтроля.
[0018] Фиг. 7 - графическое представление примера профиля поверхности рассматриваемого объекта, показанного на изображении фиг. 1.
[0019] Фиг. 8 - другое полученное в примере осуществления устройством видеоконтроля изображение поверхности рассматриваемого объекта, имеющего аномалию.
[0020] Фиг. 9 - блок-схема последовательности операций в примере осуществления способа отображения трехмерных данных для контроля поверхности рассматриваемого объекта, показанного на изображении фиг. 8.
[0021] Фиг. 10 - отображение подмножества точек поверхности на виде облака точек.
[0022] Фиг. 11 - блок-схема приводимого в качестве примера способа отображения двумерного изображения рассматриваемого объекта одновременно с изображением, изображающим трехмерную геометрию рассматриваемого объекта.
[0023] Фиг. 12 - отображение двумерного изображения и стереоизображения рассматриваемого объекта.
[0024] Фиг. 13 - отображение двумерного изображения рассматриваемого объекта с измерительными курсорами и визуализированного изображения трехмерной геометрии рассматриваемого объекта в форме изображения профиля глубины с идентификаторами измерения.
[0025] Фиг. 14 - отображение двумерного изображения рассматриваемого объекта с измерительными курсорами и визуализированного изображения трехмерной геометрии рассматриваемого объекта в форме вида облака точек с идентификаторами измерения.
[0026] Фиг. 15А - еще одно полученное устройством видеоконтроля в другом примере осуществления иллюстративное изображение турбинной лопатки с недостающим углом.
[0027] Фиг. 15В представляет собой отображение в другом примере осуществления изобретения трехмерного вида облака точек турбинной лопатки с отсутствующим углом, как показано на фиг. 15А.
[0028] Фиг. 15С - еще одно полученное устройством видеоконтроля в другом примере осуществления изобретения иллюстративное изображение турбинной лопатки с отсутствующим углом.
[0029] Фиг. 16 иллюстрирует взаимосвязь между пикселями изображения, пикселями датчика, координатами базовой поверхности и координатами поверхности объекта.
[0030] Фиг. 17 - еще одно полученное устройством видеоконтроля в другом примере осуществления изобретения иллюстративное изображение турбинной лопатки, имеющей отсутствующий угол.
[0031] На фиг. 18 показан рядом двумерный/трехмерный вид плоскости измерения и эталонного профиля.
[0032] Фиг. 19А и 19В иллюстрируют маркировку изображения графической накладкой (или маской), чтобы визуализировать определенную базовую поверхность, например, плоскость измерения.
[0033] На фиг. 20 показан вид облака точек объекта с линиями поля наблюдения для обеспечения визуальной индикации ориентации наконечника зонда устройства видеоконтроля.
[0034] Фиг. 21 - двумерное изображение рядом с трехмерным видом облака точек объекта в примере осуществления изобретения.
[0035] На фиг. 22А показано другое двумерное изображение рядом с видом облака точек объекта в примере осуществления изобретения.
[0036] На фиг. 22В показана геометрическая связь между углом наблюдения кромки видеоконтрольным устройством и базовой поверхностью.
[0037] Фиг. 23А представляет собой изображение, отображающее рядом друг с другом двумерное изображение рассматриваемого объекта, имеющего ямку или выбоину, и трехмерный вид облака точек ямки или выбоины, иллюстрирующий графическую накладку (или маску) плоскости глубины, где измерительный курсор расположен далеко от самой глубокой точки.
[0038] Фиг. 23В - увеличенный вид двумерного изображения рассматриваемого объекта, имеющего ямку или выбоину, показанного на фиг. 23А, иллюстрирующий графическую накладку плоскости глубины.
[0039] Фиг. 24А представляет собой изображение, отображающее рядом друг с другом двумерное изображение рассматриваемого объекта, имеющего ямку или выбоину, и трехмерный вид облака точек ямки или выбоины, иллюстрирующий графическую накладку плоскости глубины, где измерительный курсор расположен ближе к самой глубокой точке, чем на фиг. 23А.
[0040] Фиг. 24В - увеличенный вид двумерного изображения рассматриваемого объекта, имеющего ямку или выбоину, показанную на фиг. 24А, иллюстрирующий графическую накладку плоскости глубины.
[0041] Фиг. 25 - изображение, отображающее рядом друг с другом двумерное изображение рассматриваемого объекта, имеющего ямку или выбоину, и трехмерный вид облака точек ямки или выбоины, иллюстрирующий графическую накладку плоскости глубины, где измерительный курсор расположен в самой глубокой точке.
[0042] Фиг. 26 представляет собой изображение, отображающее рядом друг с другом двумерное изображение рассматриваемого объекта, имеющего ямку или выбоину, и трехмерный вид облака точек ямки или выбоины, иллюстрирующий графическую накладку плоскости глубины, где измерительный курсор расположен вдали от самой глубокой точки.
[0043] Фиг. 27 представляет собой изображение, отображающее рядом друг с другом двумерное изображение рассматриваемого объекта, имеющего ямку или выбоину, и трехмерный вид облака точек ямки или выбоины, иллюстрирующий графическую накладку плоскости глубины, где измерительный курсор расположен в самой глубокой точке.
[0044] Фиг. 28 - изображение, отображающее рядом друг с другом двумерное изображение участка между концом турбинной лопатки и корпусом и трехмерный вид облака точек того же участка, иллюстрирующий графическую накладку плоскости глубины.
[0045] Фиг. 29А представляет собой изображение, отображающее рядом друг с другом двумерное изображение паза и трехмерный вид облака точек паза, иллюстрирующий графические накладки плоскостей кромки, где измерительные курсоры расположены напротив друг друга по диагонали.
[0046] Фиг. 29В представляет собой изображение, отображающее рядом друг с другом двумерное изображение паза и трехмерный вид облака точек паза, иллюстрирующее графические накладки плоскостей кромки, где измерительные курсоры размещены прямо напротив друг друга.
[0047] Фиг. 30А представляет собой изображение, отображающее рядом друг с другом двумерное изображение кромки турбинной лопатки и трехмерный вид облака точек кромки турбинной лопатки, иллюстрирующее графические накладки плоскостей кромки, где измерительные курсоры не расположены на кромке турбинной лопатки.
[0048] Фиг. 30В представляет собой изображение, отображающее рядом друг с другом двумерное изображение кромки турбинной лопатки и трехмерный вид облака точек кромки турбинной лопатки, иллюстрирующее графические накладки плоскостей кромки, где измерительные курсоры расположены на кромке турбинной лопатки.
[0049] Фиг. 31 иллюстрирует пример блок-схемы последовательности операций способа измерения элемента в примере осуществления изобретения.
Подробное описание
[0050] Формы осуществления раскрываемого предмета относятся к графическим накладкам для измерения размеров элементов на объекте или вблизи него с использованием устройства видеоконтроля. Например, контролер, использующий видеоустройство для идентификации и измерения размеров аномалий на объекте (например, трещины в турбинной лопатке), помещает измерительные курсоры на пиксели изображения объекта для измерения размеров аномалии, чтобы определить, требуется ли техническое обслуживание для исправления аномалии. Чтобы облегчить точные измерения, полупрозрачную графическую накладку можно разместить на пикселях изображения объекта, связанных с позицией измерительных курсоров. Полупрозрачные графические накладки при проведении измерения аномалии на объекте дают пользователю визуальную индикацию, размещены ли измерительные курсоры в правильных позициях для точного измерения аномалии. Например, если измерительные курсоры не размещены в правильной позиции, полупрозрачные графические накладки будут четко указывать пользователю, что курсоры должны быть перемещены для получения точного измерения размеров аномалии. Другие формы осуществления находятся в пределах объема раскрываемого предмета изобретения.
[0051] Фиг. 1 - блок-схема приводимого в качестве примера устройства 100 видеоконтроля. Понятно, что устройство 100 видеоконтроля, показанное на фиг. 1, является иллюстративным и что объем изобретения не ограничивается каким-либо конкретным устройством 100 видеоконтроля или какой-либо конкретной конфигурацией компонентов в устройстве 100 видеоконтроля.
[0052] Устройство 100 видеоконтроля может включать удлиненный зонд 102, содержащий вставную трубку 110 и головной узел 120, расположенный на дальнем конце вставной трубки 110. Вставная трубка 110 может быть гибкой трубчатой секцией, через которую проходят все соединения между головным узлом 120 и электронным блоком 140 зонда. Головной узел 120 может содержать в себе оптику 122 зонда для направления и фокусировки света от рассматриваемого объекта 202 на формирователь 124 сигналов изображения. Оптика 122 зонда может содержать, например, однолинзовый объектив или объектив, имеющий несколько компонентов. Формирователь 124 сигналов изображения может быть твердотельной камерой на приборах с зарядовыми связями (Charge Coupled Device, CCD) или датчиком изображения на комплементарных структурах металл-оксид-полупроводник (Complementary Metal-Oxide_Semiconductor, CMOS) для получения изображения рассматриваемого объекта 202.
[0053] Съемный наконечник или переходник 130 может быть установлен на дальнем конце узла 120 головки. Съемный наконечник 130 может содержать оптическую систему 132 наконечника для рассматривания (например, линзы, окна или диафрагмы), которая работает совместно с оптикой 122 зонда, чтобы направлять и фокусировать свет от рассматриваемого объекта 202 на формирователь 124 сигналов изображения. Съемный наконечник 130 может содержать также светодиоды (Light Emitting Diode, LED) освещения (не показанные), если источник света для устройства 100 видеоконтроля излучает из наконечника 130 или светопропускающего элемента (не показанного) для передачи света от зонда 102 к рассматриваемому объекту 202. Наконечник 130 также может обеспечивать возможность бокового обзора путем включения в его состав волновода (например, призмы) для поворота поля зрения камеры и светового потока вбок. Наконечник 130 может предусматривать также стереоскопическую оптику или элементы проецирования структурированного света для использования при определении трехмерных данных рассматриваемой поверхности. Элементы, которые могут быть включены в наконечник 130, могут быть включены также и в сам зонд 102.
[0054] Формирователь 124 сигналов изображения может содержать множество пикселей, организованных в виде множества строк и столбцов, и может формировать сигналы изображения в виде аналоговых напряжений, представляющих свет, падающий на каждый из пикселей формирователя 124 сигналов изображения. Сигналы изображения могут передаваться с помощью переходного устройства 126 формирователя сигналов изображения, которое содержит электронные схемы для буферизации сигналов и приведения их к требуемой форме для жгута 112 проводов формирователя сигналов изображения, который предоставляет провода для передачи сигналов управления и изображения между переходным устройством 126 формирователя сигналов изображения и электронными интерфейсными схемами 142 формирователя сигналов изображения. Электронные интерфейсные схемы 142 формирователя сигналов изображения могут включать в себя источники питания, генератор синхронизации для генерации тактовых сигналов формирователя сигналов изображения, аналоговый входной блок для преобразования в цифровую форму выходных сигналов формирователя сигналов изображения и цифровой процессор сигналов для обработки преобразованных в цифровую форму видеоданных формирователя сигналов изображения и преобразования их в более удобный видеоформат.
[0055] Электронные интерфейсные схемы 142 формирователя сигналов изображения является частью электронных схем 140 зонда, которые обеспечивают ряд функций для управления устройством 100 видеоконтроля. Электронные схемы 140 зонда также может содержать калибровочную память 144, которая хранит калибровочные данные зонда 102 и/или наконечника 130. Микроконтроллер 146 также может входить в состав электронных схем 140 зонда для связи с электронными интерфейсными схемами 142 формирователя сигналов изображения, чтобы определять и устанавливать параметры усиления и экспозиции, сохранять и считывать калибровочные данные из калибровочной памяти 144, управлять светом, подаваемым на рассматриваемый объект 202, и осуществлять связь с центральным процессором CPU 150 устройства 100 видеоконтроля.
[0056] Помимо связи с микроконтроллером 146 электронные интерфейсные схемы 142 формирователя сигналов изображения также осуществляют связь с одним или несколькими видеопроцессорами 160. Видеопроцессор 160 может принимать видеосигнал от электронных интерфейсных схем 142 формирователя сигналов изображения и выводить сигналы на различные мониторы 170, 172, включая встроенный дисплей 170 или внешний монитор 172. Встроенный дисплей 170 может быть жидкокристаллическим экраном, встроенным в устройство 100 видео контроля для отображения контролеру различных изображений или данных (например, изображения рассматриваемого объекта 202, меню, курсоров, результатов измерений). Внешний монитор 172 может быть видеомонитором или монитором компьютера, подключенным к устройству 100 видеоконтроля с целью отображения различных изображений или данных.
[0057] Видеопроцессор 160 может подавать/принимать команды, информацию о состоянии, потоковое видео, неподвижные видеоизображения и графические накладки в/из процессора CPU 150 и может состоять из программируемых пользователем логических матриц (Field Programmable Gate Array, FPGA), цифровых процессоров сигналов (Digital Signal Processor, DSP) или других элементов обработки, которые обеспечивают такие функции как захват изображения, улучшение изображения, слияние графических накладок, коррекция искажений, усреднение кадров, масштабирование, цифровое масштабирование, наложение, слияние, зеркальное отражение, обнаружение движения, а также преобразование и сжатие видеоформатов.
[0058] Процессор CPU 150 в дополнение к предоставлению множества остальных функций, включающих хранение изображений, видео и аудио и функции вызова, управление системой и обработку данных измерений, может использоваться для управления пользовательским интерфейсом путем приема данных, вводимых с помощью джойстика 180, кнопок 182, клавиатуры 184 и/или микрофона 186. Пользователь может манипулировать джойстиком 180 для выполнения таких операций как выбор пунктов меню, перемещение курсора, регулировки движка и управление артикуляцией зонда 102, при этом джойстик может включать функцию нажимной кнопки. Кнопки 182 и/или клавиатура 184 могут использоваться также для выбора пунктов меню и подачи пользовательских команд в процессор CPU 150 (например, замораживания или сохранения неподвижного изображения). Микрофон 186 может использоваться контролером для подачи голосовых команд для замораживания или сохранения неподвижного изображения.
[0059] Видеопроцессор 160 также может осуществлять связь с видеопамятью 162, которая используется видеопроцессором 160 для буферизации кадров и временного хранения данных во время обработки. Процессор CPU 150 также может осуществлять связь с памятью 152 программы процессора для хранения программ, выполняемых CPU 150. Кроме того, процессор CPU 150 может поддерживать связь с энергозависимой памятью 154 (например, запоминающим устройством с произвольной выборкой (Random Access Memory, RAM)) и энергонезависимой памятью 156 (например, устройством флэш-памяти, жестким диском, цифровым универсальным диском (Digital Versatile Disc, DVD) или электрически стираемым программируемым постоянным запоминающим устройством (Electrically Erasable Programmable Read-Only Memory, EEPROM)). Энергонезависимая память 156 является основным хранилищем для потоковой передачи видео и неподвижных изображений.
[0060] Процессор CPU 150 также может поддерживать связь с интерфейсом 158 ввода/вывода (Input/Output, I/O) компьютера, который обеспечивает различные интерфейсы для периферийных устройств и сетей, таких как универсальная последовательная шина (Universal Serial Bus, USB), шина сверхбыстрой передачи данных Firewire, сеть Ethernet, аудио I/O и беспроводные приемопередатчики. Этот интерфейс I/O 158 компьютера может использоваться для хранения, воспроизведения, передачи и/или приема неподвижных изображений, потокового видео или аудио. Например, USB-флэш-накопитель или карта памяти компакт-флэш может подключаться к интерфейсу 158 I/O компьютера. Кроме того, устройство 100 видео контроля может быть выполнено с возможностью передачи кадров данных изображения или потоковых видеоданных на внешний компьютер или сервер. Устройство 100 видеоконтроля может содержать пакет протоколов управления передачей/межсетевого протокола (Transmission Control Protocol/Internet Protocol, TCP/IP) и может быть встроено в глобальную сеть, включающую в себя множество локальных и удаленных компьютеров, причем каждый из компьютеров также содержит пакет протоколов TCP/IP. Благодаря включению пакета протоколов TCP/IP устройство 100 видеоконтроля содержит несколько протоколов транспортного уровня, включая TCP и протокол передачи пользовательских датаграмм (User Datagram Protocol, UDP), и несколько протоколов другого уровня, включая протокол передачи гипертекста (HyperText Transfer Protocol, HTTP) и протокол передачи файлов (File Transfer Protocol, FTP).
[0061] Понятно, что, хотя некоторые компоненты показаны на фиг. 1 как один компонент (например, процессор CPU 150), для выполнения функций процессора CPU 150 могут использоваться несколько отдельных компонентов.
[0062] Фиг. 2 представляет собой пример изображения 200, полученного в примере осуществления изобретения устройством 100 видеоконтроля поверхности 210 рассматриваемого объекта 202, имеющего аномалию 204. В этом примере аномалия 204 показана в виде выбоины, где материал был удален с поверхности 210 рассматриваемого объекта 202 в аномалии 204 вследствие повреждения или износа. Понятно, что аномалия 204, показанная в этом примере осуществления, является просто примером и что способ согласно изобретению применим к другим типам неоднородностей (например, трещинам, точкам точечной коррозии, потере покрытия, поверхностным отложениям и т.д.). Как только изображение 200 получено и идентифицирована аномалия 204, изображение 200 может использоваться для определения размеров аномалии 204 (например, высоты или глубины, длины, ширины, площади, объема, перпендикулярного расстояния от точки до линии, среза профиля и т.д.). В одной из форм осуществления изобретения используемое изображение 200 может быть двумерным изображением 200 поверхности 210 рассматриваемого объекта 202, содержащего аномалию 204.
[0063] Фиг. 3 - блок-схема приводимого в качестве примера способа 300 для автоматической идентификации самой глубокой точки на поверхности 210 объекта аномалии 204 на рассматриваемом объекте 202, который показан на изображении 200 на фиг. 2 в примере осуществления изобретения. Понятно, что этапы, описанные на блок-схеме фиг. 3, могут выполняться в порядке, отличном от показанного на блок-схеме, и что не все этапы необходимы для определенных форм осуществления изобретения.
[0064] На этапе 310 приводимого в качестве примера способа 300 (фиг. 3), как показано на фиг. 2, пользователь может использовать устройство 100 видеоконтроля (например, формирователь 124 сигнала изображения) для получения по меньшей мере одного изображения 200 поверхности 210 рассматриваемого объекта 202, имеющего аномалию 204, и отображения его на видеомониторе (например, встроенном дисплее 170 или внешнем мониторе 172). В одной из форм осуществления изобретения изображение 200 может отображаться в режиме измерения устройства видеоконтроля.
[0065] На этапе 320 приводимого в качестве примера способа 300 (фиг. 3) устройство 100 видеоконтроля (например, процессор CPU 150) может определить трехмерные координаты (например, (х, у, z)) множества точек поверхности на поверхности 210 рассматриваемого объекта 202, включая точки поверхности аномалии 204. В одной из форм осуществления изобретения устройство видеоконтроля может формировать трехмерные данные из изображения 200 для определения трехмерных координат. Несколько различных существующих технологий могут использоваться для получения трехмерных координат точек поверхности на изображении 200 (фиг. 2) поверхности 210 объекта (например, стереоскопические системы, системы сканирования, стереоскопической триангуляции, методы структурированного света, такие как анализ фазового сдвига, метод муаровой интерферометрии с фазовым сдвигом, метод проекции лазерных точек и т.п.).
[0066] Большинство таких технологий включают использование калибровочных данных, которые, среди прочего, включают в себя данные оптических характеристик, используемых для уменьшения ошибок в трехмерных координатах, которые в противном случае были бы вызваны оптическими искажениями. С помощью некоторых технологий трехмерные координаты могут быть определены с использованием одного или более изображений, захваченных близко по времени, которые могут включать в себя проецируемые узоры и тому подобное. Следует понимать, что ссылки на трехмерные координаты, определенные с использованием изображения 200, могут содержать также трехмерные координаты, которые определены с использованием одного или множества изображений 200 поверхности 210 объекта, захваченных близко по времени, и что изображение 200, отображаемое для пользователя во время описанных операций, может действительно использоваться или не использоваться при определении трехмерных координат.
[0067] На этапе 330 приводимого в качестве примера способа 300 (фиг. 3) и, как показано на фиг. 4, устройство 100 видеоконтроля (например, процессор CPU 150) может определить базовую поверхность 250. В некоторых формах осуществления базовая поверхность 250 может быть плоской, в то время как в других формах осуществления базовая поверхность 250 может быть криволинейной. Аналогично, в одной из форм осуществления изобретения базовая поверхность 250 может быть в виде плоскости, тогда как в других формах осуществления базовая поверхность 250 может иметь форму другой фигуры (например, цилиндра, сферы и т.п.). Например, пользователь может использовать джойстик 180 (или другое указывающее устройство (например, мышь, сенсорный экран и т.п.)) устройства 100 видеоконтроля для выбора одной или более точек базовой поверхности на поверхности 210 рассматриваемого объекта 202 в непосредственной близости к аномалии 204, чтобы определить базовую поверхность.
[0068] В одной из форм осуществления изобретения, как показано на фиг. 4, в общей сложности три точки 221, 222, 223 базовой поверхности выбирают на поверхности 210 объекта рассматриваемого объекта 202 вблизи аномалии 204, чтобы провести измерение глубины аномалии 204, с тремя точками 221, 222, 223 базовой поверхности, выбранными на поверхности 210 объекта вблизи аномалии 204. В одной из форм осуществления изобретения множество точек 221, 222, 223 базовой поверхности на поверхности 210 рассматриваемого объекта 202 могут быть выбраны путем размещения курсоров 231, 232, 233 базовой поверхности (или других указывающих устройств) на пикселях 241, 242, 243 изображения 200, соответствующих множеству точек 221, 222, 223 базовой поверхности, на поверхности 210 объекта. В примере измерения глубины, устройство 100 видеоконтроля (например, процессор CPU 150) может определить трехмерные координаты каждой из множества точек 221, 222, 223 базовой поверхности.
[0069] Трехмерные координаты трех или более точек поверхности вблизи одной или более из трех точек 221, 222, 223 базовой поверхности, выбранных на поверхности 210 объекта вблизи аномалии 204, могут быть использованы для определения базовой поверхности 250 (например, плоскости). В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может выполнить подбор кривой по трехмерным координатам трех точек 221, 222, 223 базовой поверхности, чтобы определить уравнение для базовой поверхности 250 (например, для плоскости), имеющее следующий вид:
iRS
iRS
iRS
0RS
1RS
2RS
где (x, y, Z) - координаты трехмерной точки на определяемой базовой поверхности 250 и k, k, and k - коэффициенты, полученные с помощью подбора кривой по трехмерным координатам.
iRS1
iRS1
iRS
iRS
iRS
[0070] Следует отметить, что для выполнения подбора кривой используется множество точек базовой поверхности (то есть по меньшей мере столько точек, сколько коэффициентов k). Подбор кривой находит коэффициенты k, которые наилучшим образом подходят для используемых точек (например, методом наименьших квадратов). Затем коэффициенты k определяют плоскость или другую базовую поверхность 250, которая аппроксимирует используемые трехмерные точки. Однако, если при подборе кривой используется больше точек, чем число коэффициентов k, когда вы подставляете координаты x и у используемых точек в уравнение плоскости (1), результаты z обычно не будут точно соответствовать координатам z точек из-за шума и некоторого отклонения от плоскости, которые могут существовать в действительности. Таким образом, x и y могут быть любыми произвольными значениями, а полученная в результате z сообщает вам z определяемой плоскости у x, y. Соответственно, координаты, показанные в этих уравнениях, могут быть координатами произвольных точек, лежащих точно на определяемой поверхности, а не обязательно точек, используемых при подборе для определения коэффициентов k.
0RS
1RS
2RS
[0071] В других формах осуществления имеется только одна или две выбранные точки базовой поверхности, что не позволяет использовать аппроксимацию кривой, основанную только на трехмерных координатах этих точек базовой поверхности, поскольку для определения k, k, и k необходимы три точки. В этом случае устройство 100 видеоконтроля (например, процессор CPU 150) может идентифицировать множество пикселей вблизи каждого из пикселей изображения, соответствующих множеству точек на поверхности 210 объекта, ближайших к точке(-ам) базовой поверхности, и определить трехмерные координаты ближайшей точки(-ек), что позволяет выполнить подбор кривой для определения базовой поверхности 250.
[0072] Хотя иллюстративная базовая поверхность 250 была описана как определяемая на основе точек 221, 222, 223 базовой поверхности, выбранных курсорами 231, 232, 233 базовой поверхности, в других формах осуществления изобретения базовая поверхность 250 может быть сформирована с использованием указывающего устройства для помещения контура 260 базовой поверхности (например, окружности, квадрата, прямоугольника, треугольника и т.п.) вблизи аномалии 204 и с использованием точек 261, 262, 263, 264 базовой поверхности контура 260 для определения базовой поверхности 250. Понятно, что точки 261, 262, 263, 264 базовой поверхности контура 260 могут быть точками, выбранными указывающим устройством, или быть другими точками на периметре контура или близко к нему, размер которого может быть задан так, чтобы охватывать аномалию 204.
[0073] На этапе 340 приводимого в качестве примера способа 300 (фиг. 3), как показано на фиг. 5, устройство 100 видеоконтроля (например, процессор CPU 150) определяет исследуемую область 270 вблизи аномалии 204 на основе точек базовой поверхности 250. Исследуемая область 270 включает в себя множество точек поверхности аномалии 204. В одной из форм осуществления изобретения исследуемую область 270 формируют посредством формирования контура 271 исследуемой области (например, окружности), основанного на двух или более точках 221, 222, 223 базовой поверхности. В другой форме осуществления изобретения исследуемая область 270 может быть определена путем формирования цилиндра перпендикулярно к базовой поверхности 260 с прохождением его через две или более точки 221, 222, 223 базовой поверхности или в непосредственной близости к ним. Обратимся снова к фиг. 4, исследуемая область может быть сформирована в пределах контура 260 базовой поверхности и точек 261, 262, 263, 264 базовой поверхности.
[0074] Хотя приводимая в качестве примера исследуемая область 271 на фиг. 5 образована путем прохождения через точки 221, 222, 223 базовой поверхности, в другой форме осуществления контур базовой поверхности меньшего диаметра может быть образован путем прохождения только вблизи точек базовой поверхности. Например, как показано на фиг. 6, исследуемая область 280 формируется путем прохождения контура 281 (например, окружности) исследуемой области вблизи двух точек 221, 222 базовой поверхности, где диаметр окружности 281 меньше расстояния между двумя точками 221, 222 базовой поверхности. Понятно, что контуры 271, 281 исследуемых областей и исследуемые области 270, 280 могут отображаться или не отображаться на изображении 200.
[0075] После определения исследуемой области 270, 280 на этапе 350 приводимого в качестве примера способа 300 (фиг. 3) устройство 100 видеоконтроля (например, процессор CPU 150) определяет расстояние (то есть глубину) от каждой из множества точек поверхности в исследуемой области до базовой поверхности 250. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) определяет расстояние как длину прямой, проходящей между базовой поверхностью 250 и каждой из множества точек поверхности в исследуемой области 270, 280, причем эта прямая перпендикулярно пересекает базовую поверхность 250.
[0076] На этапе 360 приводимого в качестве примера способа 300 (фиг. 3) устройство видеоконтроля определяет позицию самой глубокой точки 224 поверхности в исследуемой области 270, 280, определяя точку поверхности, которая наиболее удалена от базовой поверхности 250 (например, выбирая точку поверхности с самой длинной прямой, проходящей к базовой поверхности 250). Следует понимать, что, как используется в настоящем описании, "самая глубокая точка" или "самая глубокая точка поверхности" может быть самой дальней точкой, которая утоплена относительно базовой поверхности 250, или самой дальней точкой (т.е., самой высокой точкой), которая выступает из базовой поверхности 250. Устройство 100 видеоконтроля может идентифицировать самую глубокую точку 224 поверхности в исследуемой области 270, 280 на изображении, отображая, например, курсор 234 (фиг. 5) или другой графический идентификатор 282 (фиг. 6) на самой глубокой точке 224 поверхности. Кроме того, как показано на фиг. 5 и 6, устройство 100 видеоконтроля может отображать глубину 290 (в дюймах или миллиметрах) самой глубокой точки 224 поверхности в исследуемой области 270, 280 на изображении 200 (то есть длину перпендикулярной прямой, проходящей от самой глубокой точки 224 поверхности до базовой поверхности 250). При автоматическом отображении курсора 234 или другого графического идентификатора 282 (фиг. 6) в самой глубокой точке 224 поверхности в исследуемой области 270, 280 устройство 100 видеоконтроля уменьшает время, необходимое для выполнения измерения глубины, и повышает точность измерение глубины, поскольку пользователю не требуется вручную идентифицировать самую глубокую точку 224 поверхности в аномалии 204.
[0077] Как только курсор 234 отобразился в самой глубокой точке 224 поверхности в исследуемой области 270, 280, пользователь может выбрать эту точку для съемки и сохранения результата измерения глубины. Пользователь также может перемещать курсор 234 в исследуемой области 270, 280 для определения глубины других точек поверхности в исследуемой области 270, 280. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может контролировать перемещение курсора 234 и обнаруживать, когда курсор 234 прекратил движение. Когда курсор 234 прекращает движение в течение заданного промежутка времени (например, 1 секунды), устройство 100 видеоконтроля (например, процессор CPU 150) может определить самую глубокую точку поверхности вблизи курсора 234 (например, заданной окружности, центрированной вокруг курсора 234) и автоматически переместить курсор 234 в это положение.
[0078] Фиг. 7 - графическое представление приводимого в качестве примера профиля 370 поверхности 210 рассматриваемого объекта 202, показанного на изображении 200 на фиг. 2. В этом примере профиля 370 базовая поверхность 250 показана проходящей между двумя точками 221, 222 базовой поверхности и их соответствующими курсорами 231, 232 базовой поверхности. Позиция и глубина 290 самой глубокой точки 224 поверхности в исследуемой области также показаны в графическом представлении. В другой форме осуществления изобретения вид облака точек также может использоваться для отображения самой глубокой точки 224 поверхности.
[0079] Фиг. 8 - другое изображение 500, полученное в примере осуществления изобретения устройством 100 видеоконтроля поверхности 510 рассматриваемого объекта 502, имеющего аномалию 504. Снова в этом примере аномалия 504 показана как выбоина, где материал удален с поверхности 510 рассматриваемого объекта 502 в аномалии 504 вмледствие повреждения или износа. Понятно, что аномалия 504, показанная в этом примере осуществления, является просто примером и что способ согласно изобретению применяется к другим типам неровностей (например, трещинам, точечной коррозии, потере покрытия, поверхностным отложениям и т.п.). Как только изображение 500 получено и аномалия 504 идентифицирована, изображение 500 может использоваться для определения размеров аномалии 504 (например, высоты или глубины, длины, ширины, площади, объема, расстояния от точки до линии, среза профиля и т.д.). В одной из форм осуществления изобретения используемое изображение 500 может быть двумерным изображением 500 поверхности 510 рассматриваемого объекта 502, включающего аномалию 504.
[0080] Фиг. 9 - блок-схема способа 600 для отображения в примере осуществления изобретения трехмерных данных для контроля поверхности 510 рассматриваемого объекта 502, показанного на изображении 500 на фиг. 8. Понятно, что этапы, описанные в блок-схеме фиг. 9, могут выполняться в другом порядке, чем показано на блок-схеме, и что не все этапы необходимы для определенных форм осуществления изобретения.
[0081] На этапе 610, как показано на фиг. 8, оператор может использовать устройство 100 видеоконтроля, чтобы получить изображение 500 поверхности 510 рассматриваемого объекта 502, имеющей аномалию 504, и отобразить его на видеомониторе (например, встроенном дисплее 170 или внешнем мониторе 172). В одной из форм осуществления изобретения изображение 500 может отображаться в режиме измерения устройства видеоконтроля.
iS1
iS1
iS1
[0082] На этапе 620 процессор CPU 150 устройства 100 видеоконтроля может определить трехмерные координаты (x, y, z) в первой системе координат множества точек поверхности на поверхности 510 рассматриваемого объекта 502, включающей аномалию 504. В одной из форм осуществления изобретения устройство видеоконтроля может формировать трехмерные данные из изображения 500 для определения трехмерных координат. Как обсуждалось выше, для получения трехмерных координат точек на изображении 500 поверхности 510 объекта могут использоваться несколько различных существующих методов (например, стереоскопические системы, сканирующие системы, методы структурированного освещения, таких как фазовый сдвиг, муаровая интерферометрия с фазовым сдвигом, проекция лазерной точки и т.п.).
[0083] На этапе 630 и, как показано на фиг. 8, оператор может использовать джойстик 180 (или другое указывающее устройство (например, мышь, сенсорный экран)) устройства 100 видеоконтроля для выбора множества точек измерений на поверхности 510 рассматриваемого объекта 502 вблизи аномалии 504 для проведения измерений определенного типа. Количество выбранных точек измерений зависит от типа измерения, которое должно быть выполнено. Для некоторых измерений может потребоваться выбор двух точек измерений (например, длины, профиля), в то время как другим измерениям может потребоваться выбор трех или более точек измерений (например, от точки до линии, площади, многосегментных измерений). В одной из форм осуществления изобретения, как показано на фиг. 8, на поверхности 510 рассматриваемого объекта 502, расположенной вблизи аномалии 504, выбирают четыре точки 521, 522, 523, 524 объекта, чтобы провести измерение глубины аномалии 504, причем три точки 521, 522, 523 измерения выбирают на поверхности 510 объекта вблизи аномалии 504, а четвертая выбираемая точка 524 измерения должна находиться в самом глубоком месте аномалии 504. В одной из форм осуществления изобретения множество точек 521, 522, 523, 524 измерения на поверхности 510 рассматриваемого объекта 502 могут быть выбраны путем помещения курсоров 531, 532, 533, 534 (или других указывающих устройств) на пикселях 541, 542, 543, 544 изображения 500, соответствующих множеству точек 521, 522, 523, 524 измерения на поверхности 510 объекта. В примере измерения глубины устройство 100 видеоконтроля может определить трехмерные координаты в первой системе координат каждой из множества точек 521, 522, 523, 524 измерения. Понятно, что способ согласно изобретению не ограничивается измерениями глубины или измерениями с участием четырех выбранных точек измерений, а применим к различным типам измерений с различным количеством точек, включая те, которые обсуждались выше.
iM1
iM1
iM1
[0084] На этапе 640, как показано на фиг. 8, процессор CPU 150 устройства 100 видеоконтроля может определить базовую поверхность 550. В примере измерения глубины аномалии 504, показанной на фиг. 8, трехмерные координаты трех или более точек поверхности вблизи одной или более из трех точек 521, 522, 523 измерения, выбранных на поверхности 510 объекта вблизи аномалии 504, могут быть использованы для определения базовой поверхности 550 (например, плоскости). В одной из форм осуществления изобретения устройство 100 видео контроля может выполнять подбор кривой по трехмерным координатам в первой системе координат трех точек 521, 522, 523 измерения (x, y, z) для определения уравнения базовой поверхности 550 (например, плоскости), имеющего следующий вид:
iRS1
iRS1
iRS1
0RS1
1RS1
2RS1
где (x, y z) - координаты трехмерной точки в первой системе координат на определенной базовой поверхности 550 и k, k и k - коэффициенты, полученные с помощью подбора кривой по трехмерным координатам в первой системе координат.
iRS1
iRS1
iRS1
iRS1
iRS1
[0085] Следует отметить, что для выполнения подбора кривой используется множество точек измерений (то есть по меньшей мере число точек равное числу коэффициентов k). Подбор кривой находит коэффициенты k, которые наилучшим образом подходят для используемых точек (например, методом наименьших квадратов). Затем коэффициенты k определяют плоскость или другую базовую поверхность 550, которая аппроксимирует используемые трехмерные точки. Однако, если при подборе кривой используется больше точек, чем число коэффициентов k, когда вы подставляете координаты х и у используемых точек в уравнение плоскости (2), полученные в результате z, как правило, не соответствуют точно координатам z точек из-за шума и некоторого отклонения от плоскости, которое может реально существовать. Таким образом, x и y могут быть любыми произвольными значениями, а полученная z сообщит вам z определенной плоскости для x, y. Соответственно, координаты, показанные в этих уравнениях, могут быть координатами произвольных точек точно на определяемой поверхности, а не обязательно точек, используемых при подборе для определения коэффициентов k.
0RS1
1RS1
2RS1
[0086] В другой форме осуществления изобретения для конкретного измерения (например, длины, профиля) имеются только две точки измерения, что не позволяет использовать подбор кривой на основании трехмерных координат только этих двух точек измерений, поскольку необходимы три точки для определения k, k и k. В этом случае устройство 100 видеоконтроля может идентифицировать множество пикселей вблизи каждого из пикселей изображения, соответствующих множеству точек на поверхности 510 объекта вблизи каждой из точек измерений, и определить трехмерные координаты этих точек, что позволит выполнить подбор кривой для определения базовой поверхности 550.
iF1
iF1
iF1
[0087] В одной из форм осуществления изобретения, как показано на фиг. 8, устройство 100 видеоконтроля может определить трехмерные координаты в первой системе координат множества точек 560 рамки (x, y, z), образующих рамку 562 (например, прямоугольник) на базовой поверхности 550 вокруг аномалии 504 и точек 521, 522, 523, 524 измерений, которая может быть использована позже для отображения позиции базовой поверхности 550.
[0088] Как только базовая поверхность 550 определена, в примере осуществления, показанном на фиг. 8, устройство 100 видеоконтроля может проводить измерение (например, глубины) аномалии 504 путем определения расстояния между четвертой точкой 524 измерения, выбранной в самой глубокой точке аномалии 504, и базовой поверхностью 550. Точность этого измерения глубины определяется точностью выбора множества точек 521, 522, 523, 524 измерения на поверхности 510 рассматриваемого объекта 502. Во многих случаях, как обсуждалось ранее, контур аномалии 504 на изображении 500 трудно оценить из двумерного изображения, и он может быть слишком малым или иным образом недостаточным для надежного определения множества точек 521, 522, 523, 524 измерения. Соответственно, во многих случаях оператор хочет получить дополнительную информацию в зоне аномалии 504 для оценки точности позиции этих точек 521, 522, 523, 524 измерения. Поэтому, в то время как некоторые устройства 100 видеоконтроля могут обеспечивать вид облака точек полного изображения 500, этот вид может не обеспечивать требуемый уровень детализации аномалии 504, как обсуждалось ранее. Чтобы обеспечить более содержательный вид поверхности 510 объекта в зоне вокруг точек 521, 522, 523, 524 измерения, чем предлагаемый видом облака точек трехмерных данных всего изображения 500, способ согласно изобретению создает подмножество трехмерных данных в исследуемой области.
[0089] На этапе 650 процессор CPU 150 устройства 100 видеоконтроля может установить вторую систему координат, отличающуюся от первой системы координат. В одной из форм осуществления изобретения вторая система координат может быть основана на базовой поверхности 550 и множестве точек 521, 522, 523 и 524 измерений. Устройство 100 видеоконтроля может назначить начало второй системы координат (хо2, Уо2. Zo2)=(0, 0, 0), которое должно быть расположено вблизи средней позиции 525 трехмерных координат точек на базовой поверхности 550, соответствующих двум или более из множества точек 521, 522, 523, 524 измерений на поверхности 510 объекта (например, путем проецирования точек 521, 522, 523 и 524 измерений на базовую поверхность 550 и определения среднего положения 525 на базовой поверхности 550). В некоторых случаях трехмерные координаты точек на базовой поверхности 550, соответствующих точкам 521, 522, 523 измерений, могут быть одинаковыми. Однако в некоторых случаях из-за шума и/или небольших изменений поверхности 510 объекта точки 521, 522, 523 измерений не располагаются точно на базовой поверхности 550 и, следовательно, имеют разные координаты.
[0090] При определении точек на базовой поверхности 550, которые соответствуют точкам 521, 522, 523, 524 измерений на поверхности 510 объекта, удобно применить концепцию направлений линии, которая передает относительные наклоны линий в плоскостях х, у, и z, и может использоваться для установки перпендикулярных или параллельных линий. Для заданной линии, проходящей через две трехмерные координаты (x1, y1, z1) и (х2, у2, z2), направления линий (dx, dy, dz) могут быть определены как:
[0091] Задавая точку на линии (x1,y1,z1) и направления линии (dx, dy, dz), линию можно определить следующим образом:
[0092] Таким образом, задав любую одну из координат х, у или z, можно вычислить оставшиеся две. Параллельные линии имеют одинаковые или линейно масштабируемые направления линий. Две линии, имеющие направления (dx1, dy1, dz1) и (dx2, dy2, dz2), перпендикулярны, если:
[0093] Направления для всех линий, нормальных к базовой плоскости, определяемой с использованием уравнения (2), определяются следующим образом:
S
S
S
[0094] На основании уравнений (6) и (8)-(10), линия, которая перпендикулярна к базовой поверхности 550 и проходит через точку (x, y, z) поверхности, может быть определена как:
iRS1
iRS1
iRS1
iS1
iS1
iS1
iS1
iS1
iS1
[0095] В одной из форм осуществления изобретения координаты точки на базовой поверхности 550 (x, y, z), соответствующей точке на поверхности 510 объекта (x, y, z) (например, трехмерные координаты в первой системе координат точек на базовой поверхности 550, соответствующих точкам 521, 522, 523, 524 измерений), могут быть определены путем определения линии нормали к базовой поверхности 550, имеющей направления, приведенные в уравнениях (8)-(10), и проходящей через (x, y, z), и определения координат пересечения этой линии с базовой поверхностью 550. Таким образом, из уравнений (2) и (11):
M1avg
M1avg
M1avg
O2
O2
O2
M1avg
M1avg
M1avg
[0096] В одной из форм осуществления изобретения эти этапы (уравнения (3)-(14)) могут быть использованы для определения трехмерных координат точек на базовой поверхности 550, соответствующих точкам 521, 522, 523, 524 измерений. Тогда может быть определено среднее положение 525 этих проецируемых точек из точек измерений на базовой поверхности 550 (x, y, z). Затем может быть назначено начало второй системы координат (x, y, z)=(0, 0, 0) и расположено вблизи среднего положения 525 (x, y, z).
[0097] Расположение начала второй системы координат вблизи среднего положения 525 в зоне аномалии 504 со значениями z, являющимися расстоянием по перпендикуляру от каждой точки поверхности до базовой поверхности 550, допускает поворот вида облака точек вокруг центра зоны аномалии 504 и допускает любую цветовую шкалу карты глубины, чтобы указывать высоту или глубину точки поверхности от базовой поверхности 550.
i1
i1
i1
i2
i2
i2
[0098] Чтобы воспользоваться преимуществом этой второй системы координат, на этапе 660 процессор CPU 150 устройства 100 видеоконтроля преобразует трехмерные координаты в первой системе координат (x, y, z), определенные для различных точек (например, множество точек поверхности, множество точек 521, 522, 523, 524 измерений, точки на базовой поверхности 550, в том числе точки 560 рамки и т.п.), в трехмерные координаты во второй системе координат (x, y, z).
[0099] В одной из форм осуществления изобретения матрица преобразования координат ([Т]) может использоваться для преобразования координат в соответствии со следующим:
где [Т] - матрица преобразования.
[0100] В нематричном виде трехмерные координаты во второй системе координат могут быть определены следующим образом:
где значения матрицы преобразования являются значениями направлений линий новых осей х, у и z в первой системе координат.
[0101] На этапе 670 процессор CPU 150 устройства 100 видеоконтроля определяет подмножество множества точек поверхности, которые находятся в пределах исследуемой области на поверхности 510 рассматриваемого объекта 502. В одной из форм осуществления изобретения исследуемая область может быть ограниченной зоной на поверхности 510 рассматриваемого объекта 502, окружающей множество выбранных точек 521, 522, 523, 524 измерений, чтобы свести к минимуму количество трехмерных данных, которые будут использоваться на виде облака точек. Понятно, что этап 670 определения подмножества может иметь место до или после этапа 660 преобразования. Например, если определение подмножества на этапе 670 происходит после этапа 660 преобразования, устройство 100 видеоконтроля может преобразовывать координаты для всех точек поверхности, включая точки, которые находятся за пределами исследуемой области, прежде чем определять, какая из этих точек находятся в исследуемой области. В качестве альтернативы, если определение подмножества на этапе 670 происходит до этапа 660 преобразования, устройству 100 видео контроля может потребоваться преобразовать координаты только для тех точек поверхности, которые находятся в исследуемой области.
max
O2
O2
O2
M1avg
M1avg
M1avg
ROI
ROI
MAX
ROI
MAX
O2
O2
O2
iRS2
iRS2
RS2
[0102] В одной из форм осуществления изобретения исследуемая область может быть определена путем определения максимального расстояния (d) между каждой из точек на базовой поверхности 550, соответствующей точкам 521, 522, 523, 524 измерений, и средней позицией 525 этих точек на базовой поверхности 550 (начало второй системы координат (x, y, z)=(0, 0, 0), если это сделано после преобразования, или (x, y, z)) в первой системе координат, если это сделано до преобразования). В одной из форм осуществления изобретения исследуемая область может включать в себя все точки поверхности, которые имеют соответствующие точки на базовой поверхности 550 (то есть, когда проецируются на базовую поверхность), находящиеся в пределах определенного порогового расстояния (d) от среднего положения 525 точек 521, 522, 523, 245 измерений на базовой поверхности 550 (например, меньше, чем максимальное расстояние (d=d) или меньше, чем расстояние немного большее (например, на двадцать процентов большее), чем максимальное расстояние (d=1,2*d)). Например, если среднее положение 525 во второй системе координат находится в (x, y, z)=(0, 0, 0), то расстояние (d) от этого положения до точки на базовой поверхности 550, соответствующей точке поверхности (X, y, Zi), определяется следующим образом:
M1avg
M1avg
M1avg
iRS1
iRS1
iRS1
[0103] Аналогичным образом, если среднее положение 525 в первой системе координат находится в точке (x, y, z), то расстояние (d) от этого положения до точки на базовой поверхности 550, соответствующей точке поверхности (x, y, Z), дается следующей формулой:
iRS1
iRS2
ROI
[0104] Если точка поверхности имеет значение расстояния (d или d) меньшее, чем пороговое расстояние исследуемой области (d), и поэтому находится в исследуемой области, устройство 100 видеоконтроля может записать трехмерные координаты этой точки поверхности и цвет пикселя, соответствующий глубине этой точки поверхности, в файл вида облака точек. В этом примере осуществления исследуемая область представляет собой цилиндр, который включает в себя точки поверхности, находящиеся в пределах радиусе цилиндра. Понятно, что могут использоваться другие формы и способы для определения исследуемой области.
[0105] Исследуемая область может быть определена также на основе глубины аномалии 504 на поверхности 510 рассматриваемого объекта 502, определяемой устройством 100 видеоконтроля в первой системе координат. Например, если глубина аномалии 504 была измерена равной 0,005 дюйма (0,127 мм), исследуемая область может быть определена так, чтобы включать в себя только те точки, которые имеют расстояния от базовой поверхности 550 (или размеры z) в пределах определенного диапазона (±0,015 дюйма (0,381 мм)), основанного на расстоянии одной или более точек 521, 522, 523, 524 измерений до базовой поверхности 550. Если точка поверхности имеет значение глубины внутри исследуемой области, устройство 100 видео контроля может записать трехмерные координаты этой точки поверхности и цвет пикселя, соответствующий глубине этой поверхности, в файл вида облака точек. Если точка поверхности имеет значение глубины вне исследуемой области, устройство 100 видеоконтроля может не включать эту точку поверхности в файл вида облака точек.
[0106] На этапе 680, как показано на фиг. 10, монитор 170, 172 устройства 100 видеоконтроля может отобразить визуализированный трехмерный вид (например, вид облака точек) 700 подмножества множества точек поверхности в трехмерных координатах второй системы координат, имеющей начало 725 координат в центре вида. В одной из форм осуществления изобретения (не показанной) отображение вида 700 облака точек может включать в себя цветовую карту, чтобы указывать расстояние между каждой из точек поверхности и базовой поверхностью 750 во второй системе координат (например, первая точка на определенной глубине показывается оттенком красного цвета, соответствующим этой глубине, вторая точка на другой глубине показывается оттенком зеленого цвета, соответствующим этой глубине). Отображаемый вид 700 облака точек может включать в себя также позицию множества точек 721, 722, 723, 724 измерений. Чтобы помочь оператору в просмотре вида 700 облака точек, устройство 100 видеоконтроля может определить также точки 771, 772, 773 трехмерной линии по прямым линиям между двумя или более из множества точек 721, 722, 723 измерений в трехмерных координатах второй системы координат и отображать эти точки 771, 772, 773 линии на виде 700 облака точек. Вид 700 облака точек также может включать линию 774 глубины от точки 724 измерения, расположенной в самой глубокой точке аномалии 504, до базовой поверхности 750. В одной из форм осуществления изобретения устройство 100 видеоконтроля может определять, превышает ли длина линия 774 глубины допуск по техническим условиям или другое пороговое значение, и обеспечивать визуальную или звуковую индикацию или сигнализацию о таком событии.
[0107] Отображаемый вид 700 облака точек может включать в себя также множество точек 760 рамки, образующих рамку 762 на базовой поверхности 750 во второй системе координат, чтобы показывать позицию базовой поверхности 750. В другой форме осуществления, отображаемый вид 700 облака точек также может включать в себя шкалу, указывающую расстояние по перпендикуляру от базовой поверхности 750.
[0108] Как показано на фиг. 10, ограничивая данные в виде 700 облака точек этими точками в исследуемой области и позволяя виду поворачиваться вокруг точки 725 в центре исследуемой области (например, в начале координат), оператор может более легко проанализировать аномалию 504 и определить, является ли измерение глубины и размещение точек 721, 722, 723, 724 измерений точным. В одной из форм осуществления изобретения оператор может изменить позицию одной или более точек 721, 722, 723, 724 измерений на виде 700 облака точек, если требуется коррекция. Альтернативно, если требуется коррекция, оператор может вернуться к двумерному изображению 500 на фиг. 8, повторно выбрать одну или несколько точек 521, 522, 523, 524 измерений и повторить процесс.
[0109] В другой форме осуществления монитор 170, 172 устройства 100 видеоконтроля может отображать визуализированный трехмерный вид 700 подмножества множества точек поверхности в трехмерных координатах первой системы координат без выполнения преобразования координат. В этой форме осуществления вид 700 облака точек на основе исходных координат также может включать в себя описанные выше различные функции для помощи оператору, включая отображение цветовой карты, позицию множества точек измерений, точки трехмерных линии, линии глубины, рамки или шкалы.
[0110] Фиг. 11 - блок-схема приводимого в другом примере осуществления изобретения в качестве примера способа 800 отображения двумерного изображения рассматриваемого объекта одновременно с изображением, изображающим трехмерную геометрию рассматриваемого объекта. Понятно, что этапы, описанные на блок-схеме фиг. 11, могут выполняться в другом порядке, чем показано на блок-схеме, и что не все этапы необходимы для определенных форм осуществления.
[0111] На этапе 810 приводимого в качестве примера способа (фиг. 8), как показано на фиг. 12, устройство 100 видеоконтроля (например, формирователь 124 сигнала изображения на фиг. 1) получает по меньшей мере одно двумерное изображение 903 поверхности 911 рассматриваемого объекта 910, имеющей аномалию 912, и отображает ее на первой стороне 901 дисплея 900 (например, встроенного дисплея 170, внешнего монитора 172 или сенсорного экрана пользовательского интерфейса). В одной из форм осуществления изобретения двумерное изображение 903 отображается в режиме измерения устройства 100 видеоконтроля.
[0112] На этапе 820 приводимого в качестве примера способа 800 (фиг. 11), как показано на фиг. 12, устройство 100 видеоконтроля (например, процессор CPU 150 на фиг. 1) определяет трехмерные координаты (например, (х, у, z)) множества точек 913, 914 поверхности на поверхности 911 рассматриваемого объекта 910. В одной из форм осуществления изобретения устройство видеоконтроля формирует трехмерные данные из двумерного изображения 903 для определения трехмерных координат. Фиг. 12 - показывает дисплей 900 с двумерным первым стереоизображением 903 рассматриваемого объекта 910 на первой стороне 901 дисплея 900 и соответствующим двумерным вторым стереоизображением 904 рассматриваемого объекта 910 на второй стороне 902 дисплея 900. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) использует технологию стереоскопии для определения трехмерных координат (например, (х, у, z)) множества точек 913, 914 поверхности на двумерном первом стереоизображении 903 путем нахождения совпадающих точек 915, 916 поверхности на соответствующем двумерном втором стереоизображении 904, а затем вычисления трехмерных координат на основе несоответствия расстояния между пикселями между множеством точек 913, 914 поверхности на двумерном первом стереоизображении 903 (или зоне пикселей (например, зоне 4×4)) и совпадающими точками 915, 916 поверхности на соответствующем двумерном втором стереоизображении 904. Будет понятно, как показано на фиг. 12-14, что ссылка здесь на двумерное изображение по отношению к стереоизображению 903, 904 может включать в себя оба или одно из первого (левого) стереоизображения 903 и второго (правого) стереоизображения 904.
[0113] Для получения трехмерных координат точек 913, 914 поверхности на двумерном изображении 903 (фиг. 12) поверхности 911 объекта можно использовать несколько различных существующих методов (например, стереоскопические системы, сканирующие системы, стереоскопическую триангуляцию, методы структурированного освещения, такие как анализ фазового сдвига, муаровая интерферометрия с фазовым сдвигом, проекция лазерной точки и т.п.). Большинство таких методов включают использование калибровочных данных, которые, среди прочего, включают в себя данные оптических характеристик, используемые для уменьшения погрешностей в трехмерных координатах, которые в противном случае были бы вызваны оптическими искажениями. С помощью некоторых методов трехмерные координаты могут быть определены с использованием одного или более двумерных изображений, захваченных близко по времени, которые могут включать в себя проецируемые структуры и т.п. Следует понимать, что ссылки на трехмерные координаты, определяемые с использованием двумерного изображения 903, могут содержать также трехмерные координаты, определяемые с использованием одного или множества двумерных изображений поверхности 911 объекта, захваченных близко по времени, и что двумерное изображение 903, показываемое оператору во время описанных операций, может действительно использоваться или не использоваться при определении трехмерных координат.
[0114] На этапе 830 приводимого в качестве примера способа 800 (фиг. 11), как показано на фиг. 13 и 14, по меньшей мере часть двумерного изображения 903 рассматриваемого объекта 910 с измерительными курсорами 931, 932 отображается на первой стороне 901 дисплея 900, а визуализированное изображение 905 трехмерной геометрии по меньшей мере части поверхности 911 рассматриваемого объекта 910 отображается на второй стороне 902 дисплея 900. По сравнению с фиг. 12, визуализированное изображение 905 заменяет второе (правое) стереоизображение 904 на дисплее 900. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) начинает (и в одной из форм осуществления изобретения завершает) процесс определения трехмерных координат (например, (х, у, z)) множества точек 913, 914 поверхности на поверхности 911 рассматриваемого объекта 910 перед размещением и отображением измерительных курсоров 931, 932. Хотя примеры форм осуществления, показанные на фиг. 13 и 14, показывают одно визуализированное изображение 905 трехмерной геометрии поверхности 911 рассматриваемого объекта 910, отображаемое на второй стороне 902 дисплея 900, понятно, что может быть показано более одного визуализированного изображения 905 одновременно с двумерным изображением 903 или без него.
[0115] В иллюстративной форме осуществления, показанной на фиг. 13, визуализированное изображение 905 представляет собой изображение 906 профиля глубины, показывающее трехмерную геометрию поверхности 911 рассматриваемого объекта 910, включая аномалию 912. В другом примере осуществления, показанном на фиг. 14, визуализированное изображение 905 представляет собой вид 907 облака точек, показывающий трехмерную геометрию поверхности 911 рассматриваемого объекта 910, включая аномалию 912. В примере вида 907 облака точек, показанном на фиг. 14, только подмножество трехмерных координат точек 913, 914 поверхности 911 рассматриваемого объекта 910 отображается в исследуемой области, основанной на местоположении измерительных курсоров 931, 932. В другой форме осуществления вид 907 облака точек отображает все вычисленные трехмерные координаты точек 913, 914 поверхности на поверхности 911 рассматриваемого объекта 910. В одной из форм осуществления изобретения, например, когда дисплей является сенсорным экраном пользовательского интерфейса, пользователь может поворачивать вид 907 облака точек с помощью сенсорного экрана.
[0116] В одной из форм осуществления изобретения, как показано на фиг. 14, вид 907 облака точек может быть раскрашен для указания расстояния между точками поверхности 911 рассматриваемого объекта 910 и базовой поверхностью 960 (например, базовой плоскостью, определяемой с использованием трехмерных координат вблизи одного или более из множества измерительных курсоров 931, 932). Например, первая точка на определенной глубине показана оттенком красного цвета, соответствующим этой глубине, вторая точка на другой глубине показана оттенком зеленого цвета, соответствующим этой глубине. Цветовая шкала 908 глубины предусматривается для того, чтобы показать соотношение между цветами, показанными на виде 907 облака точек, и их соответствующими расстояниями от базовой поверхности 960. В одной из форм осуществления изобретения вид 907 облака точек может быть выровнен, чтобы графически сгладить переход между соседними точками на виде 907 облака точек.
[0117] Как только трехмерные координаты определены для множества точек 913, 914 поверхности на поверхности 911 рассматриваемого объекта 910, пользователь может проводить измерения на двумерном изображении 903.
[0118] В одной из форм осуществления изобретения устройство 100 видеоконтроля сохраняет в качестве изображения вид с разделением двумерного изображения 903 и визуализированного изображения 905. Устройство 100 видеоконтроля также может сохранять в качестве метаданных исходное полное стереоизображение первого (левого) стереоизображения 903 и второго (правого) стереоизображения 904 (например, только в градациях серого), как показано на фиг. 11, и калибровочные данные, позволяющие выполнить повторное вычисление трехмерных данных и повторное измерение из сохраненного файла. В качестве альтернативы устройство 100 видеоконтроля может сохранять вычисленные трехмерные координаты и/или данные о различиях в качестве метаданных, что сокращает время обработки при вызове, но приводит к большему размеру файла.
[0119] На этапе 840 приводимого в качестве примера способа 800 (фиг. 11), как показано на фиг. 13 и 14, измерительные курсоры 931, 932 размещаются (при помощи указывающего устройства) и отображаются на двумерном изображении 903, чтобы позволить устройству 100 видеоконтроля (например, процессору CPU 150) определять размеры аномалии 912 (например, высоту или глубину, длину, ширину, площадь, объем, расстояние от точки до линии, срез профиля и т.п.). В другой форме осуществления, где двумерное изображение не является стереоизображением, измерительные курсоры 931, 932 (как показано на фиг. 13 и 14) также могут быть размещены на двумерном изображении 903, чтобы позволить устройству 100 видеоконтроля (например, процессору CPU 150) определять размеры аномалии 912 (например, высоту или глубину, длину, ширину, площадь, объем, расстояние от точки до линии, срез профиля и т.п.). В еще одной форме осуществления, вместо того, чтобы быть помещенными на двумерное изображение 903, измерительные курсоры могут быть размещены (с помощью указывающего устройства) на визуализированном изображении 905 трехмерной геометрии по меньшей мере части поверхности 911 рассматриваемого объекта 910 на второй стороне 902 дисплея 900.
[0120] На иллюстративном дисплее 900 первый измерительный курсор 931 помещается в первую точку 921 измерения на поверхности 911 рассматриваемого объекта 910, а второй измерительный курсор 932 помещается во вторую точку 922 измерения на поверхности 911 объекта просмотренного объекта 910. Так как трехмерные координаты точек 921, 922 измерения на поверхности 911 рассматриваемого объекта 910 известны, геометрическое измерение (например, измерение глубины или длины) поверхности 911 объекта может выполняться пользователем и устройство 100 видеоконтроля (например, процессор CPU 150) может определять измеряемый размер 950, как показано на фиг. 13 и 14. В примере, показанном на фиг. 13 и 14, линия 933 измерения отображается на двумерном изображении 903.
[0121] Визуализированное изображение 905 трехмерной геометрии поверхности 911 рассматриваемого объекта 910 отображается на второй стороне 902 дисплея 900, чтобы помочь в размещении измерительных курсоров 931, 932 на двумерном изображении 903 для проведения геометрических измерений. В обычной системе, включающей стереоскопические или не стереоскопические двумерные изображения, эти измерительные курсоры 931, 932 (как показано на фиг. 13 и 14) размещаются на основе только вида, представленного двумерным изображением 903, которое может не позволять выполнить точное размещение измерительных курсоров 931, 932 и точные измерения.
[0122] На этапе 850 приводимого в качестве примера способа 800 (фиг. 11), как показано на фиг. 13 и 14, идентификаторы 941, 942 измерения, соответствующие измерительным курсорам 931, 932, размещенным на двумерном изображении 903, отображаются на визуализированном изображении 905 трехмерной геометрии поверхности 911 рассматриваемого объекта 912. Например, первый идентификатор 941 измерения показан на визуализированном изображении 905 в той же трехмерной координате поверхности 911 рассматриваемого объекта 912 в качестве первого измерительного курсора 931, а второй идентификатор 942 измерения показан на визуализированном изображение 905 в той же трехмерной координате поверхности 911 рассматриваемого объекта 912 в качестве второго измерительного курсора 932. На иллюстративном виде 907 облака точек, показанном на фиг. 14, отображается идентификатор 943 измерительной линии, соответствующий линии 933 измерения (например, линии измерения глубины) на двумерном изображении 901. Это визуализированное изображение 905 трехмерной геометрии поверхности 911 рассматриваемого объекта 910, отображаемое одновременно с двумерным изображением 903 поверхности 911 рассматриваемого объекта 912, позволяет пользователю более точно размещать измерительные курсоры 931, 932 для обеспечения более точного измерения геометрии. В еще одной форме осуществления, в которой измерительные курсоры размещаются (при помощи указывающего устройства) на визуализированном изображении 905, идентификаторы измерений, соответствующие измерительным курсорам, отображаются на двумерном изображении 903.
[0123] В одной из форм осуществления изобретения, когда пользователь изменяет позицию измерительных курсоров 931, 932 на двумерном изображении 903, устройство 100 видеоконтроля (например, процессор CPU 150) автоматически обновляет позицию идентификаторов 941, 942 измерений, соответствующих измерительным курсорам 931, 932, и визуализированное изображение 905 (например, исследуемая область или цвета глубины на виде 907 облака точек на фиг. 14) трехмерной геометрии поверхности 911 рассматриваемого объекта 912 также изменяются, чтобы позволить пользователю визуализировать новое измерение практически в реальном времени. В другой форме осуществления после того, как измерительные курсоры 931, 932 помещены на двумерное изображение 903, идентификаторы 941, 942 измерений могут быть повторно позиционированы на визуализированном изображении 905.
[0124] В еще одной форме осуществления, где измерительные курсоры размещаются (с помощью указывающего устройства) на визуализированном изображении 905, и идентификаторы измерений, соответствующие измерительным курсорам, отображаются на двумерном изображении 903, когда пользователь меняет местоположение измерительных курсоров на визуализированном изображении 905, устройство 100 видеоконтроля (например, процессор CPU 150) автоматически обновляет местоположение идентификаторов измерений, соответствующих измерительным курсорам, и двумерное изображение также изменяется, чтобы позволить пользователю визуализировать новое измерение практически в реальном времени. В другой форме осуществления, после того, как измерительные курсоры помещаются на визуализированное изображение 905, идентификаторы измерений могут быть перемещены на двумерном изображении 903.
[0125] На этапе 860 приводимого в качестве примера способа 800 (фиг. 11), как показано на фиг. 13 и 14, устройство 100 видеоконтроля изображения (например, процессор CPU 150) определяет измеряемый размер 950, запрошенный пользователем для конкретного геометрического измерения (например, измерения глубины или длины), на основе позиций измерительных курсоров 931, 932 и отображает измеренный размер 950 на дисплее 900. В другой форме осуществления измеренный размер может отображаться на дисплее 900 на визуализированном изображении 905.
[0126] Как показано на фиг. 12-14, сенсорные клавиши 909 могут быть предусмотрены на дисплее 900 для предоставления различных функций пользователю при получении изображений и проведении измерений (например, просмотр, отмена, добавление измерения, следующее измерение, опции, удаление, аннотация, съемка изображения, сброс, масштабирование, полное изображение/измеряемое изображение, включение/выключение карты глубины и т.п.). В одной из форм осуществления изобретения, когда пользователь активирует либо двумерное изображение 903, либо визуализированное изображение 905, отдельные сенсорные клавиши 909 могут изменяться в зависимости от активного изображения.
[0127] На фиг. 15А представлено еще одно полученное устройством 100 видеоконтроля в другом примере осуществления изобретения иллюстративное изображение 1001 турбинной лопатки 1010, имеющей отсутствующий угол (показанный многоугольником 1050), и корпуса 1015. В одной из форм осуществления изобретения изображение 1001 может быть двумерным изображением 1001 поверхности 1013 рассматриваемого объекта (турбинной лопатки 1010). В следующем примере двумерное изображение может быть стереоизображением. Как показано на фиг. 15А пользователь может использовать устройство 100 видеоконтроля (например, формирователь 124 сигнала изображения) для получения по меньшей мере одного изображения 1001 поверхности 1013 турбинной лопатки 1010 и отображения его на видеомониторе (например, встроенном дисплее 170 или внешнем мониторе 172). В одной из форм осуществления изобретения изображение 1001 может отображаться в режиме измерения устройства 100 видеоконтроля.
[0128] Устройство 100 видеоконтроля (например, процессор CPU 150) может определять трехмерные координаты (например, (х, у, z)) множества точек поверхности на поверхности 1013 рассматриваемого объекта 1010. В одной из форм осуществления изобретения устройство видеоконтроля может формировать трехмерные данные из изображения 1001 для определения трехмерных координат. Трехмерные координаты точек поверхности на поверхности 1013 рассматриваемого объекта 1010 могут быть связаны с пикселями отображаемого двумерного изображения 1001. Для получения трехмерных координат точек поверхности на изображении 1001 (фиг. 15А) поверхности 1013 объекта можно использовать несколько различных существующих методов (например, стереоскопические системы, системы сканирования, стереоскопическая триангуляция, методы структурированного освещения, такие как анализ фазового сдвига, муаровая интерферометрия с фазовым сдвигом, проекции лазерных точек и т.п.). В одной из форм осуществления изобретения устройство 100 видеоконтроля захватывает двумерное изображение 1001 с использованием источника диффузного контрольного света без структурированного светового рисунка, а трехмерные координаты поверхности вычисляются с использованием одного или более изображений, захватываемым с использованием структурированного светового рисунка, проецируемого на объект. В таком случае структурированный световой рисунок может проецироваться с отключенным источником рассеянного контрольного света.
[0129] И снова, большинство таких методов включают использование калибровочных данных, которые, среди прочего, включают в себя данные оптических характеристик, используемых для уменьшения ошибок в трехмерных координатах, которые в противном случае были бы вызваны оптическими искажениями. С помощью некоторых методов трехмерные координаты могут быть определены с использованием одного или более изображений, захваченных близко по времени, которые могут включать в себя проецируемые рисунки и т.п. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может использовать калибровочные данные для вычисления координат точки поверхности объекта. В одном примере используются калибровочные данные, которые могут быть специфическими для устройства 100 видеоконтроля, и могут включать в себя информацию о датчиках и оптике, необходимую для определения действительных размеров и расстояний. В другом примере калибровочные данные могут включать уравнения луча для связывания каждого пикселя датчика с определенной точкой на рассматриваемом объекте.
[0130] Следует понимать, что ссылки на трехмерные координаты, определенные с использованием изображения 1001, могут также содержать трехмерные координаты, определенные с использованием одного или множества изображений 1001 поверхности 1013 объекта, захваченных близко по времени, и что изображение 1001, отображаемое для пользователя во время описанных операций, может действительно использоваться или не использоваться при определении трехмерных координат. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может усреднять вместе множество снятых изображений, чтобы формировать составное изображение с повышенной детализацией или уменьшенным шумом по сравнению с одиночным изображением.
[0131] Как показано на фиг. 15А, устройство 100 видеоконтроля (например, процессор CPU 150) может определять трехмерную базовую поверхность 1020 (например, плоскость измерения, показанную штриховыми линиями, проходящими по изображению). В некоторых формах осуществления изобретения базовая поверхность 1020 может быть плоской, тогда как в других формах осуществления базовая поверхность 1020 может быть криволинейной. Аналогичным образом, в одной из форм осуществления изобретения базовая поверхность 1020 может быть плоскостью, тогда как в других формах осуществления базовая поверхность 1020 может иметь вид другой фигуры (например, цилиндра, сферы и т.п.). Например, пользователь может использовать джойстик 180 (или другое указывающее устройство (например, мышь, сенсорный экран)) устройства 100 видеоконтроля для выбора одной или более точек 1021, 1022, 1023 базовой поверхности на изображении 1001 поверхности 1013 рассматриваемого объекта 1010 (турбинной лопатки).
[0132] В одной из форм осуществления изобретения, как показано на фиг. 15А, в общей сложности три точки 1021, 1022, 1023 базовой поверхности выбираются на изображении 1001 поверхности 1013 рассматриваемого объекта 1010. В одной из форм осуществления изобретения множество точек 1021, 1022, 1023 базовой поверхности на поверхности 1013 рассматриваемого объекта 1010 может быть выбрано путем размещения курсоров 1031, 1032, 1033 (или другие указательных устройств) базовой поверхности на пикселях 1041, 1042 1043 базовой поверхности изображения 1001, соответствующих множеству точек 1021, 1022, 1023 базовой поверхности, на поверхности 1013 объекта. Устройство 100 видеоконтроля (например, процессор CPU 150) может определить трехмерные координаты каждой из множества точек 1021, 1022, 1023 базовой поверхности.
[0133] Как показано на фиг. 15А, процессор CPU 150 устройства 100 видеоконтроля может определить базовую поверхность 1020. В примере измерения площади, показанном на фиг. 15А, трехмерные координаты трех точек 1021, 1022, 1023 базовой поверхности или трех или более точек поверхности вблизи одной или более из трех точек 1021, 1022, 1023 базовой поверхности могут быть использованы для определения базовой поверхности 1020 (например, плоскости). Как обсуждалось выше, в одной из форм осуществления изобретения устройство 100 видеоконтроля может выполнить подбор кривой по трехмерным координатам трех точек 1021, 1022, 1023 базовой поверхности, чтобы определить уравнение для базовой поверхности 1020 (например, для плоскости неограниченно продолжающейся во всех направлениях). В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может выполнить подбор кривой по трехмерным координатам точек поверхности, связанных с пикселями вблизи курсоров 1031, 1032, 1033 базовой поверхности, для определения уравнения для базовой поверхности 1020 (например, для плоскости), как описано в уравнении (1) выше. В другой форме осуществления изобретения подбор кривой может использовать только трехмерные координаты точек поверхности, связанных с пикселями в окрестности только одного из курсоров 1031, 1032, 1033 базовой поверхности, для базовой поверхности 1020. В другой форме осуществления изобретения трехмерные координаты одной выбранной точки базовой поверхности могут быть использованы устройством 100 видеоконтроля (например, процессором CPU 150) для установления базовой поверхности так, чтобы она была плоскостью при z=10 мм (ось z по центральной оптической оси поля зрения бороскопа). В другом примере один курсор может быть использован для определения базовой поверхности, например, путем создания плоскости, ортогональной или параллельной поверхности или главной оси оптической системы наблюдения и проходящей через трехмерные координаты поверхности, связанные с позицией курсора. В следующем примере четыре или более выбранных координаты могут устанавливать различные криволинейные базовые поверхности, такие как сферические, цилиндрические или поверхности другой формы, в качестве базовой поверхности. В других примерах можно использовать многочисленные курсоры для подбора криволинейных поверхностей, таких как сферы, цилиндры и т.п. В другой форме осуществления изобретения один или несколько курсоров могут использоваться для выбора областей пикселей, то есть области внутри кругового курсора, а базовая поверхность может быть определена путем подбора плоскости или другой поверхности к трехмерным координатам поверхности, связанным с выбранной областью или областями.
[0134] Как показано на фиг. 15А, турбинная лопатка 1010 имеет отсутствующий угол (показанный многоугольником 1050). Настоящее изобретение предлагает способы и устройства для измерения элементов на объекте или вблизи него, включая элементы, которые могут иметь части, отсутствующие или расположенные на расстоянии от объекта. Например, турбинная лопатка 1010 может быть проверена, чтобы определить, не оторвался ли конец или угол лопатки 1010. В этом случае соответствующий элемент, который должен быть измерен, например размеры отсутствующего угла, не находится на поверхности 1013 самой турбинной лопатки 1010, а вместо этого выходит в пространство за пределами поверхности 1013 турбинной лопатки 1010. Следовательно, измерение, использующее только трехмерные координаты точек на поверхности 1013 турбинной лопатки 1010, не обеспечит требуемую информацию (о недостающей площади, длинах недостающих кромок и т.п.). Как будет пояснено, после того, как базовая поверхность 1020 будет установлена, пользователь может выполнить измерение геометрического размера, такого как длина, расстояние от точки до линии, площадь, или измерение нескольких длин, путем позиционирования измерительных курсоров 1034, 1035, 1036, 1037 на изображении 1001 даже на тех участках, которые не находятся на поверхности рассматриваемого объекта 1010 и не имеют точек поверхности на поверхности 1013 турбинной лопатки 1010, связанных с ними.
[0135] В одной из форм осуществления изобретения, как показано на фиг. 15А, всего четыре измерительных курсора 1034, 1035, 1036, 1037 позиционируются на пикселях 1044, 1045, 1046, 1047 измерительных курсоров изображения 1001. Как будет объяснено, посредством калибровки трехмерная траектория, связанная с каждым двумерным пикселем 1044, 1045, 1046, 1047 измерительного курсора изображения 1001, известна и используется для вычисления того, где позиционируется линия траектории от каждого пикселя 1044, 1045, 1046, 1047 измерительного курсора изображения 1001 (например, может быть позицией доли пикселя, в котором будет использоваться интерполяция), пересекается с базовой поверхностью 1020 в трехмерном пространстве, чтобы определить проецируемые точки 1024, 1025, 1026, 1027 базовой поверхности, связанные с этими пикселями 1044, 1045, 1046, 1047 измерительных курсоров на базовой поверхности 1020. Как можно видеть на фиг. 15А, как только проецируемые точки 1024, 1025, 1026, 1027 базовой поверхности на базовой поверхности 1020 будут известны, пользователь может выполнить измерение, например, длины, расстояния от точки до линии, площади, или измерения нескольких длин на основании трехмерных координат проецируемых точек 1024, 1025, 1026, 1027 базовой поверхности на базовой поверхности 1020. Например, как показано на фиг. 15А, пользователь может выполнить измерение площади, формируя многоугольник 1050, имеющий первую сторону 1051 (которая обеспечивает длину отсутствующей части первой кромки 1011 лопатки), вторую сторону 1052 (которая обеспечивает длину отсутствующей части второй кромки 1012 лопатки) и третью сторону 1053.
[0136] Фиг. 15В представляет собой изображение трехмерного вида 1002 облака точек турбинной лопатки 1010, имеющей отсутствующий угол (показанный многоугольником 1050), и корпуса 1015, как показано на фиг. 15А в другом примере осуществления. Трехмерный вид 1002 облака точек, показывающий точки трехмерной поверхности турбинной лопатки 1010, базовую поверхность 1020 и проецируемые точки 1024, 1025, 1026, 1027 базовой поверхности, позволяет пользователю лучше визуализировать измерение для обеспечения того, чтобы измерение выполнялось должным образом. Как показано на фиг. 15 В, вид 1002 облака точек может включать в себя вычисленные трехмерные координаты поверхности на рассматриваемом объекте 1010, которые могут быть показаны как отдельные точки, сетка или сплошная поверхность. Трехмерные координаты, связанные с измерительными курсорами 1034, 1035, 1036, 1037, могут быть показаны как точки, сферы или тому подобное, и могут включать соединительные линии (многоугольник 1050 со сторонами 1051, 1052, 1053, 1054), обозначающие элемент (отсутствующий угол). Базовая поверхность 1020 и ее позиция также могут быть представлены дополнительным элементом, таким как прямоугольник или квадрат. Таким образом, трехмерный вид 1002 облака точек позволяет пользователю визуализировать измерение в трехмерном пространстве, чтобы гарантировать, что оно выполняется должным образом. Такая оценка может быть очень сложной, если использовать только двумерное изображение 1001. В одной из форм осуществления изобретения трехмерный вид 1002 облака точек отображается одновременно с двумерным изображением 1001, и трехмерный вид 1002 облака точек автоматически обновляется, когда измерительный курсор перемещается на двумерном изображении 1001. В другой форме осуществления пользователь самостоятельно может выбрать для просмотра либо двумерное изображение 1001, либо трехмерный вид 1002 облака точек.
[0137] Фиг. 15С - еще одно полученное в другом примере осуществления устройством 100 видеоконтроля иллюстративное изображение 1003 турбинной лопатки 1010, имеющей отсутствующий угол. В некоторых случаях может оказаться полезным использовать как трехмерные координаты проецируемых точек базовой поверхности (для точек вне рассматриваемого объекта), так и трехмерные координаты точек поверхности на рассматриваемом объекте для выполнения измерения. Как показано на фиг. 15С, измерение площади (многоугольника 170) может быть выполнено с использованием базовой поверхности 1020. В проиллюстрированной форме осуществления могут быть выбраны четыре измерительных курсора 1071, 1072, 1073, 1074 с двумя измерительными курсорами 1071, 1072, расположенными на поверхности 1013 рассматриваемого объекта 1010, и двумя измерительными курсорами 1073, 1074, расположенными вне поверхности 1013 рассматриваемого объекта 1010. Два измерительных курсора 1071, 1072, расположенные на поверхности 1013 рассматриваемого объекта 1010, расположены на пикселях, связанных с трехмерными координатами точек поверхности на поверхности 1013 рассматриваемого объекта 1010 и трехмерными координатами проецируемых точек базовой поверхности на базовой поверхности 1020. Два измерительных курсора 1073, 1074, расположенных вне поверхности 1013 рассматриваемого объекта 1010, расположены на пикселях, связанных с трехмерными координатами проецируемых точек базовой поверхности на базовой поверхности 1020, но не связанных с трехмерными координатами точек поверхности на поверхности 1013 рассматриваемого объекта 1010. Измерение может использовать трехмерные координаты точек поверхности, расположенных на поверхности 1013 рассматриваемого объекта 1010, связанных с двумя измерительными курсорами 1071, 1072, и трехмерные координаты проецируемых точек базовой поверхности на базовой поверхности 1020, связанных с двумя измерительными курсорами 1073, 1074, расположенными вне поверхности 1013 рассматриваемого объекта 1010. В качестве альтернативы, измерение может использовать трехмерные координаты проецируемых точек базовой поверхности на базовой поверхности 1020, связанных со всеми четырьмя измерительными курсорами 1071, 1072, 1073, 1074. В другой форме осуществления изобретения устройство 100 видеоконтроля позволяет пользователю выбирать, следует ли использовать трехмерные координаты точек поверхности на поверхности 1013 рассматриваемого объекта 1010 или трехмерные координаты проецируемых точек базовой поверхности на базовой поверхности 1020 для двух измерительных курсоров 1071, 1072, расположенных на поверхности 1013 рассматриваемого объекта 1010. В одном примере при измерении зазора между турбинной лопаткой 1010 и корпусом 1015 плоскость может быть установлена на корпусе 1015 (с использованием трех курсоров на пикселях, имеющих связанные с ними трехмерные координаты), поверхность измерения может быть установлена на лопатке 1010, проецируемая точка на кромке лопатки 1010 задается с использованием другого курсора, и вычисляется расстояние по перпендикуляру от плоскости до точки.
[0138] Фиг. 16 иллюстрирует взаимосвязь между пикселями изображения, пикселями датчика, координатами базовой поверхности и координатами поверхности объекта в соответствии с аспектами, изложенными в данном документе. Например, как описано ниже, пиксели на дисплее 1101 могут относиться к пикселям на датчике 1102, которые могут относиться, через уравнения луча, к точке С на поверхности объекта 1100. В проиллюстрированной форме осуществления пользователь может установить базовую поверхность 1130, выбирая по меньшей мере точку А на поверхности объекта 1100. Например, базовая поверхность 1130 может быть плоскостью, пересекающейся с объектом 1100 в точке А.
D
D
S
S
S
[0139] В одном примере пользователь может желать выполнить измерение элемента объекта 1100 с использованием базовой поверхности 1130. В таком случае пользователь может выбрать первый пиксель элемента, пиксель P, на дисплее 1101 путем позиционирования курсора на двумерном изображении, отображаемом на дисплее 1101. В таком случае пиксель P на дисплее 1101 может отображаться на пиксель P на датчике 1102, с использованием, например, пикселя отображаемого изображения для уравнений преобразования захваченных пикселей изображения, описанных ниже. Кроме того, пиксель P на датчике 1102 может отображаться в проецируемую трехмерную координату В базовой поверхности на базовой поверхности 1130. В проиллюстрированном примере пиксель Ps на датчике 1102 также может быть связан с координатой трехмерной поверхности С на объекте 1100, которая представляет собой трехмерную координату самого элемента, вычисленную с использованием захваченных изображений. Таким образом, пиксель P может иметь как связанную координату трехмерной поверхности, так и проецируемую трехмерную координату базовой поверхности, причем каждая из них может быть использована для вычисления результата измерения. В одном примере координата С трехмерной поверхности подвергается действию шума трехмерных данных и, следовательно, не точно представляет поверхность объекта 1100. В этом случае результат измерения, вычисленный с использованием проецируемой трехмерной координаты В базовой поверхности, может быть более точным, чем результат, рассчитанный с использованием координаты С. В другом примере координата С может точно представлять поверхность объекта 1100, и пользователь может выбрать использование координаты С, а не координаты В, для использования при вычислении результата измерения.
[0140] В некоторых реализациях измерительная система может включать в себя датчик, имеющий определенное разрешение захвата, такое как 640×480 у прибора с зарядовой связью (CCD). Кроме того, измерительная система может иметь пользовательский интерфейс с различным разрешением дисплея, например, 1024×768 пикселей. В таком случае, когда пользователь выбирает позицию курсора на экране пользовательского интерфейса, выбранный пиксель экрана может отображаться на пиксель датчика. Например, если речь идет о модели камеры с точечной диафрагмой, то если разрешение дисплея составляет 1024×768, а разрешение захвата 640×480, столбец (col) и строка (row) захвата могут быть рассчитаны следующим образом:
Capture col=Display col*640/1024=Display col*0,625,
Capture row=Display row*480/768=Display row*0.625.
[0141] Например, курсор дисплея с {col, row}={15,33, 100,67} эквивалентен захвату capture {col, row}={9,581, 62,919}. В этом случае билинейная интерполяция может использоваться между пикселями захвата (9,62), (10,62), (9,63), (10,63), для интерполяции уравнений луча для эквивалентного пикселя.
[0142] В одном примере уравнения луча имеют следующий вид:
r,c
r,c
r,c
r,c
r,c
r,c
x(z)=a*z и y(z)=b*z, где a и b являются зависимыми от пикселей.
[0143] В этом случае коэффициенты интерполяции могут быть рассчитаны как:
c1
k=col-(int)col=9,581-9-0,581,
c0
c1
k=1-k=0,419,
r1
k=row-(int)row=62,919-62=0,919,
r0
r1
k=1-k=0,081,
9,581, 62,919
c0
r0
9,62
c1
r0
10,62
c0
r1
9,63
c1
r1
10,63,
a=k*k*a+k*k*a+k*k*a+k*k*a
9,581, 62,919
c0
r0
9,62
c1
r0
10,62
c0
r1
9,63
c1
r1
10,63
b=k*k*b+k*k*b+k*k*b+k*k*b.
[0144] Аналогичный подход билинейной интерполяции может использоваться для определения координаты поверхности х, у, z, связанной с координатой пикселя отображаемого или захваченного изображения.
[0145] В одном конкретном примере уравнения луча могут быть использованы для установления соответствия между пикселями двумерного изображения и координатами базовой поверхности следующим образом.
[0146] Уравнение плоскости может быть выражено как:
z=z0+c*x+d*y.
[0147] Уравнение луча может быть выражено как:
x=a*z; y=b*z.
[0148] В этом случае пересечение может быть решено следующим образом:
zi=z0+c*a*zi+d*b*zi,
zi*(1-c*a-d*b)=z0,
zi=z0/(1-c*a-d*b).
[0149] Например, zi можно подставить в уравнение луча, чтобы получить xi, yi. Таким образом, для данной координаты пикселя двумерного отображаемого или захваченного изображения может быть вычислена связанная с ней проецируемая трехмерная координата базовой поверхности xi, yi, zi. Для данного измерения вычисляются одна или несколько проецируемых трехмерных координат базовой поверхности, связанных с одной или несколькими координатами пикселя двумерного изображения измерительного курсора. Одна или несколько проецируемых трехмерных координат базовой поверхности затем используются для вычисления геометрических размеров элемента рассматриваемого объекта.
[0150] Принимая во внимание вышесказанное, формы осуществления изобретения позволяют измерять размеры элементов на поверхности объекта или вблизи него с использованием системы видеоконтроля. Технический эффект заключается в том, чтобы обеспечить точные измерения элементов объектов, когда нет трехмерных данных или имеются трехмерные данные с низкой точностью.
[0151] Как показано на фиг. 15А и 15С, обычные измерения, выполняемые устройством 100 видеоконтроля турбинной лопатки 1010, имеющей недостающий угол, представляют собой площадь отсутствующего угла, длину отсутствующего участка 1051 первой кромки 1011 лопатки 1010 и длину отсутствующей части 1052 второй кромки 1012 лопатки 1010. Однако для того, чтобы сделать измерения на базовой плоскости 1020, пользователь должен визуально точно определить, где разместить измерительный курсор 1037 в позиции, где конец или угол недостающей части был раньше, что может быть трудно экстраполировать. Кроме того, если пользователь хочет найти площадь отсутствующего угла и две длины 1051, 1052, пользователь должен разместить курсоры так, чтобы установить базовую поверхность, а затем выполнить измерение площади и два измерения от точки до линии, требующие несколько размещений курсора. Кроме того, измерения "от точки до линии" дают длины 1051, 1052 недостающих частей кромки, которые предполагают угол с прямым углом, что часто бывает не так.
[0152] Фиг. 17 - еще одно иллюстративное изображение 1004, полученное устройством 100 видеоконтроля турбинной лопатки 1010, имеющей отсутствующий угол, в другом примере осуществления. Как будет объяснено, устройство 100 видеоконтроля способно обнаруживать, когда выполняется измерение площади недостающего угла, и упрощает измерение для автоматического получения площади отсутствующего угла и длин 1051, 1052 недостающих частей кромки. Как описано выше для одной из форм осуществления изобретения, и как показано на фиг. 15 и 17, в общей сложности три точки 1021, 1022, 1023 базовой поверхности выбираются на изображении 1004 поверхности 1013 рассматриваемого объекта 1010 путем помещения курсоров 1031, 1032, 1033 базовой поверхности (или других указывающих устройств) на пикселях 1041, 1042, 1043 базовой поверхности на изображении 1001, соответствующих множеству точек 1021, 1022, 1023 базовой поверхности на поверхности 1013 объекта. Процессор CPU 150 устройства 100 видео контроля может затем определить базовую поверхность 1020, как описано выше. Затем пользователь может выбрать опцию для измерения площади.
[0153] В одной из форм осуществления изобретения, как показано на фиг. 15А и 17, всего четыре 1034, 1035, 1036, 1037 измерительных курсора располагаются на пикселях 1044, 1045, 1046, 1047 изображения 1001. Устройство 100 видеоконтроля может определить проецируемые точки 1024, 1025, 1026, 1027 базовой поверхности, связанные с этими пикселями 1044, 1045, 1046, 1047 измерительных курсоров, на базовой поверхности 1020.
[0154] В одной из форм осуществления изобретения, когда устройство 100 видеоконтроля (например, процессор CPU 150) определяет базовую поверхность 1020 (например, плоскость измерения) и определяет, что пользователь выполняет измерение площади, как показано на фиг. 15А и 17, устройство 100 видеоконтроля может затем определить, выполняет ли пользователь измерение недостающего угла. Например, в одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может определить общее расстояние между каждым из измерительных курсоров 1034, 1035, 1036, 1037 и всеми тремя курсорами 1031, 1032, 1033 базовой поверхности, чтобы идентифицировать измерительный курсор 1037, имеющий наибольшее расстояние от курсоров 1031, 1032, 1033 базовой поверхности. Устройство 100 видеоконтроля (например, процессор CPU 150) может затем определить угол (α) между двумя линиями 1051, 1052, идущими к этому измерительному курсору 1037 в многоугольнике 1050 площади. Если угол (α) находится в диапазоне от 45 до 135 градусов, устройство 100 видеоконтроля (например, процессор CPU 150) определяет, что пользователь проводит измерение недостающего угла и автоматически определяет и отображает, например, в текстовом поле 1083 площадь, угол (α) и длины 1051 (А), 1052 (В) недостающих частей кромок 1011, 1012 лопатки. Кроме того, чтобы помочь пользователю расположить измерительный курсор 1037 в позиции, где раньше находился конец или угол недостающей части, устройство 100 видео контроля (например, процессор CPU 150) определяет и отображает продолжение 1081 линии первой кромки, проходящее от измерительного курсора 1037 вдоль первой кромки 1011 турбинной лопатки, и продолжение 1082 линии второй кромки, проходящее от измерительного курсора 1037 вдоль второй кромки 1012 турбинной лопатки, чтобы обеспечить визуальную помощь пользователю для выравнивания этих продолжений 1081, 1082 линий кромок с кромками 1011, 1012 турбинной лопатки для правильного помещения измерительного курсора 1037. Как показано на фиг. 17, продолжение 1081 линии первой кромки и продолжение 1082 линии второй кромки являются прямыми линиями в трехмерном пространстве, которые выглядят в виде кривых линий на двумерном изображении 1004.
[0155] На основании вышеизложенного, формы осуществления изобретения позволяют измерять размер отсутствующего угла турбинной лопатки с использованием системы видеоконтроля. Технический эффект заключается в том, чтобы обеспечить точные измерения площади и длины недостающего угла с использованием минимального количества размещений курсора, ускоряющего измерение.
[0156] Поскольку описанная здесь базовая поверхность используется для измерения основных размеров при проведении проверок с использованием различных измерений, относящихся к рассматриваемому объекту (например, глубины, профиля глубины или измерения профиля глубины участка), важно, чтобы базовая поверхность была правильно выровнена с поверхностью физического объекта и точно представляла ее. Шум в трехмерных координатах поверхности, выбранных в качестве точек базовой поверхности, может привести к тому, что базовая поверхность будет наклонена относительно реальной поверхности, что приведет к плохой точности последующих измерений. Как будет рассмотрено ниже и показано на фиг. 19А и 19В, визуальная индикация, такая как полупрозрачная графическая накладка 1240, 1280, может быть размещена на пикселях на двумерном изображении с соответствующими точками поверхности, имеющими трехмерные координаты поверхности с меньшим, чем заранее заданное, расстоянием от трехмерной базовой поверхности, чтобы помочь пользователю оценить соответствие между базовой поверхностью и поверхностью объекта. Например, пиксели объекта вблизи базовой поверхность могут быть выделены (путем наложения) контрастным цветом, например, зеленым, чтобы обеспечить упомянутую графическую накладку. В другом примере устройство 100 видео контроля отображает на трехмерном виде облака точек индикацию, какие точки поверхности имеют трехмерные координаты, которые меньше, чем заранее заданное расстояние от трехмерной базовой поверхности, что также может помочь пользователю оценить соответствие между базовой поверхностью и поверхностью объекта. Точки поверхности объекта вблизи базовой поверхности могут быть определены с помощью декартова расстояния, или могут представлять собой упрощенные метрики, такие как расстояние z-значения, для обеспечения простоты вычислений. Фиг. 19А и 19В иллюстрируют способы маркировки изображения графической накладкой для визуализации заданной базовой поверхности, например, плоскости измерения.
[0157] На фиг. 19А изображена базовая поверхность 1220, которая плохо совмещена с поверхностью 1210 объекта. Как показано на изображении 1201 поверхности 1210 рассматриваемого объекта 1202, которая включает аномалию 1204, базовая поверхность 1220 устанавливаются на основании размещения курсоров 1231, 1232, 1233 базовой поверхности на изображении 1201. Полупрозрачная графическая накладка 1240 накладывается на пиксели на двухмерном изображении 1201 со связанными с ними точками поверхности, имеющими трехмерные координаты поверхности меньшие, чем заранее заданное расстояние от трехмерной базовой поверхности 1220. Как показано на фиг. 19А, лишь небольшая часть базовой поверхности 1220 покрыта графической накладкой 1240: это указывает на то, что базовая поверхность 1220 наклонена или иным образом не очень хорошо выровнена с поверхностью объекта 1210. Соответственно, выполненные с этой базовой поверхностью 1220 измерения аномалии 1204, вероятно, будут неточными. Наличие графической накладки 1240 будет подсказывать пользователю изменить позиции базовых курсоров, чтобы найти лучшее соответствие базовой поверхности 1220, которая имеет более широкий охват графической накладкой 1240.
[0158] На фиг. 19В изображена хорошо выровненная базовая поверхность 1260, где базовая поверхность 1260 почти полностью покрыта графической накладкой 1280. Как показано на изображении 1241 поверхности 1250 рассматриваемого объекта 1242, которая включает аномалию 1244, базовая поверхность 1260 устанавливается на основе помещения курсоров 1271, 1272, 1273 базовой поверхности на изображении 1241. Полупрозрачная графическая накладка 1280 накладываются на пиксели на двухмерном изображении 1241 со связанными точками поверхности, имеющими трехмерные координаты поверхности меньшие, чем заранее заданное расстояние от трехмерной базовой поверхности 1260. Как показано на фиг. 19 В, вся базовая поверхность 1260 покрыта графической накладкой 1280, и это показывает, что базовая поверхность 1260 правильно выровнена с поверхностью 1250 объекта. Соответственно, измерения, сделанные у аномалии 1244 с этой базовой поверхностью 1260, вероятно, будет точными. Наличие графической накладки 1280 будет информировать пользователя о том, что позиции курсоров не нуждаются в изменении.
[0159] В одном примере графическая накладка может обновляться в реальном времени, когда курсоры перемещаются пользователем. В других примерах, например, с такими типами измерений как измерения профиля глубины и профиля глубины участка, графическая накладка может временно отображаться при перемещении курсора и может удаляться через несколько секунд после остановки перемещения курсора. При измерениях глубины графическая накладка может отображаться всякий раз, когда курсор базовой поверхности активен, и может скрываться, если 4-й курсор или результат активен. В другом примере графическая накладка может отображаться всякий раз, когда активна базовая поверхность.
[0160] Чтобы определить, следует ли размещать графическую накладку на пикселе на двумерном изображении, устройство 100 видеоконтроля (например, процессор CPU 150) определяет, связан ли этот пиксель с точкой поверхности, имеющей трехмерные координаты меньше (или в пределах) заданного расстояния от трехмерной базовой поверхности. В некоторых формах осуществления расстояние между точкой поверхности и базовой поверхностью может быть определено как расстояние по перпендикуляру, в то время как в других формах осуществления расстояние может быть не перпендикулярным расстоянием.
[0161] В одной из форм осуществления изобретения пиксель может быть включен в графическую накладку, если связанная с ним точка поверхности находится в пределах расстояния до базовой поверхности ±1% от величины z точки поверхности. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может выполнить преобразование координат таким образом, чтобы преобразованное значение z для всех точек на базовой поверхности было z=0. Затем для данной точки поверхности устройство 100 видеоконтроля (например, процессор CPU 150) может сравнить фактическое (не преобразованное) значение z точки поверхности с преобразованным значением z. Если абсолютная величина преобразованного значения z (которое обеспечивает расстояние по перпендикуляру от базовой поверхности) составляет менее 1% от реального значения z, пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку.
[0162] В другой форме осуществления изобретения, не требующей преобразования координат, для каждого пикселя устройство 100 видеоконтроля (например, процессор CPU 150) может определить перпендикулярную проекцию на базовую поверхность и определять расстояние от точки поверхности до базовой поверхности в перпендикулярном направлении. Если это расстояние по перпендикуляру меньше 1% от реального значения z, пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку. Например, если расстояние составляет 0,08 мм, а точка поверхности имеет значение z 10,0 мм, пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку.
[0163] В другой форме осуществления изобретения, не требующей перпендикулярного расстояния, для каждого пикселя устройство видеоконтроля 100 (например, процессор CPU 150) может определить реальную координату z для точки поверхности и координату z для соответствующей точки проекции на базовой поверхности, проецируемой от этой точки поверхности, где такая проекция не обязательно сделана в перпендикулярном направлении. Если разность между значением z на базовой поверхности и величиной z соответствующей точки поверхности составляет менее 1% одного из двух значений z, то пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку.
[0164] На основании вышеизложенного, формы осуществления изобретения позволяют определить, правильно ли выровнена базовая поверхность с поверхностью физического объекта и точно ли представляет ее. Технический эффект заключается в обеспечении более точных измерений с использованием базовой поверхности.
[0165] В некоторых случаях пользователю может быть трудно понять, как наконечник зонда устройства видеоконтроля ориентирован относительно проверяемого объекта, при просмотре двумерного изображения или даже вида облака точек. Например, пользователю может быть сложно понять, как настроить перспективу просмотра. На фиг. 20 показан вид 1300 облака точек полного изображения 1300 объекта 1310, отображающего поле линий 1331, 1332, 1333, 1334 просмотра, проходящих из начала 1330 поля зрения (0,0,0), чтобы обеспечить визуальную индикацию ориентации наконечника зонда устройства 100 видеоконтроля по отношению к объекту 1310. Как показано на фиг. 20, базовая поверхность 1320 и ее местоположение также могут быть представлены дополнительным элементом, таким как прямоугольник или квадрат. В одной из форм осуществления изобретения пользователь может по желанию включать или выключать поле линий 1331, 1332, 1333, 1334 просмотра.
[0166] В некоторых применениях, связанных с базовой поверхностью, как описано здесь, может быть желательно сделать измерение на базовой поверхности, содержащей элемент, который может включать в себя по меньшей мере одну точку поверхности, не находящуюся на базовой поверхности, и даже может быть на значительном расстоянии от базовой поверхности. Когда базовая поверхность представляет собой базовую плоскость, такое измерение может быть описано как измерение в плоскости для точки вне плоскости.
[0167] На фиг. 21 показано двумерное изображение 1401 рядом с видом 1402 облака точек объекта 1410, имеющего верхнюю поверхность 1411 и нижнюю поверхность 1412. Как показано на фиг. 21, базовая поверхность 1420 устанавливается на основе размещения курсоров 1431, 1432, 1433 базовой поверхности на изображении 1401. Как объяснялось выше, путем калибровки трехмерная траектория, связанная с каждым пикселем, который связан с каждым из курсоров 1431, 1432, 1433 базовой поверхности, известна и используется для вычисления того, где траектория пересекается с базовой поверхностью 1420 в трехмерном пространстве, чтобы определить проецируемые точки 1424, 1425, 1426 базовой поверхности на базовой поверхности 1420. В одной из форм осуществления изобретения пользователь может захотеть измерить расстояние на базовой поверхности 1420 от первой границы 1413 между верхней поверхностью 1411 и нижней поверхностью 1412 и исследуемой точкой 1450 на нижней поверхности 1412, которая не находится на базовой поверхности 1420. Это измерение может быть выполнено с использованием, например, измерения от точки до линии с первой измерительной линией 1441 (базовой линией) между первым измерительным курсором 1434 (точкой 1424 базовой поверхности) и вторым измерительным курсором 1435 (второй базовой точкой 1425) и второй измерительной линией 1442 между первой измерительной линией 1441 (базовой линией) и третьим измерительным курсором 1436 (точкой 1426 базовой поверхности), расположенным в точке на базовой поверхности, соответствующей позиции исследуемой точки на нижней поверхности 1412.
[0168] Как можно видеть на изображении 1401 и виде 1402 облака точек на фиг. 21, на основании угла наблюдения и геометрии объекта 1410 третий измерительный курсор 1436 (и соответствующая опорная точка 1426) визуально смещается (то есть не находится прямо выше или визуально в линию) от исследуемой точки 1450, так что нахождение правильной позиции третьего измерительного курсора 1436 (и соответствующей точки 1426 базовой поверхности) на базовой поверхности 1420, которая соответствует исследуемой точке 1450 на нижней поверхности 1412, может быть сложной задачей. Для помощи пользователю устройство 100 видеоконтроля (например, процессор CPU 150) может предоставлять направляющие линии (например, направляющую линию 1460) на виде 1402 облака точек, чтобы помочь пользователю в помещении третьего измерительного курсора 1436.
[0169] В одной из форм осуществления изобретения, когда измерения выполняются с участием базовой поверхности 1420 (например, плоскости измерения), устройство 100 видеоконтроля (например, процессор CPU 150) определяет точки на поверхности объекта (например, нижней поверхности 1412) в непосредственной близости (например, в пределах 0,1 мм) к линиям, перпендикулярным к базовой поверхности 1420 и проходящим через проецируемую точку 1426 базовой поверхности, которая проецируется от измерительного курсора 1436. Если такие точки поверхности найдены, устройство 100 видеоконтроля (например, процессор CPU 150) обеспечивает направляющую линию 1460 на виде 1402 облака точек, проходящую в перпендикулярном направлении от трехмерной координаты на базовой поверхности 1420, соответствующей измерительному курсору 1436 (или соответствующей точке 1426 базовой поверхности). В одной из форм осуществления изобретения сферу помещают в точку поверхности (например, исследуемую точку 1450, как показано в виде 1402 облака точек на фиг. 21). Эта направляющая линия 1460 помогает позиционированию пользователем третьего измерительного курсора 1436 на базовой поверхности 1420 на двухмерном изображении 1401 в позиции, соответствующей исследуемой точке 1450, чтобы обеспечить точное измерение. Соответственно, пользователь может перемещать третий измерительный курсор 1436 на двумерном изображении 1401 до тех пор, пока направляющая линия 1460, связанная с этим курсором 1436, не соприкоснется с нижней поверхностью 1412 в исследуемой точке 1450. В одной из форм осуществления изобретения направляющая линия 1460 может быть по желанию скрыта или показана.
[0170] В некоторых проверках с устройством 100 видеоконтроля пользователю необходимо разместить измерительные курсоры на краю объекта. Например, на фиг. 22А показано еще одно двумерное изображение 1501 рядом с видом 1502 облака точек объекта (турбинной лопатки 1510) в примере осуществления. Как показано на фиг. 22А, кромка 1512 турбинной лопатки 1510 имеет выбоину 1513, которая могла быть вызвана, например, камнем или другим посторонним предметом, проходящим через турбинный двигатель. В одной из форм осуществления изобретения, когда пользователь может захотеть измерить размер выбоины 1513, он может поместить первый измерительный курсор 1541 и второй измерительный курсор 1542 на кромке 1512 турбинной лопатки 1510 и третий измерительный курсор 1543 на краю выбоины 1513. Три измерительных курсора 1541, 1542, 1543 могут быть использованы для выполнения измерения глубины выбоины 1513 от точки до линии с использованием первой линии 1551 измерения (базовой линии) между первым измерительным курсором 1541 и вторым измерительным курсором 1542 и второй линии 1552 измерения между первой линией 1551 измерения (базовой линией) и третьим измерительным курсором 1543. Длина второй линии 1552 измерения дает глубину выбоины 1513.
[0171] Во многих случаях трехмерные координаты для точек на кромке 1512 турбинной лопатки 1510 либо недоступны, либо не очень точны. Соответственно, как и с измерением отсутствующего угла, описанным выше, измерение от точки до линии выбоины 1513 может быть выполнено на базовой поверхности (например, плоскости измерения). Базовая поверхность 1520 устанавливается на поверхности 1511 турбинной лопатки 1510 на основе размещения курсоров 1531, 1532, 1533 базовой поверхности на изображении 1501 там, где доступны трехмерные координаты и они очень точны. После того, как базовая поверхность 1520 установлена, измерение от точки до линии выбоины 1513 может быть выполнено на базовой поверхности 1520 с использованием трехмерных координат проецируемых точек 1521, 1522, 1523 базовой поверхности на базовой поверхности 1520, связанных с измерительными курсорами 1541, 1542, 1543, как показано на фиг. 22А и 22В.
[0172] Точность этого измерения зависит от точности размещения пользователем первого измерительного курсора 1541 и второго измерительного курсора 1542 на реальной кромке 1512 турбинной лопатки 1510. Например, измерение зависит от точности размещения пользователем первого измерительного курсора 1541 и второго измерительного курсора 1542 на реальной кромке 1512 турбинной лопатки 1510 таким образом, чтобы проецируемые точки базовой поверхности 1521, 1522 на базовой поверхности 1520, связанные с измерительными курсорами 1541, 1542, точно отражали геометрическую позицию реальной кромки 1512 турбинной лопатки 1510. Во многих случаях кромка 1512 турбинной лопатки 1510 скруглена или изогнута таким образом, что реальная кромка 1512 турбинной лопатки 1510 искривляется относительно поверхности 1511 турбинной лопатки 1510 и не находится на базовой поверхности 1520, как показано на фиг. 22А.
[0173] На фиг. 22В показана геометрическая зависимость между углом наблюдения кромки (θ) устройством 100 видеоконтроля и базовой поверхностью 1520. Как показано на фиг. 22А и 22В, в зависимости от угла наблюдения кромки (θ) между линией 1570 угла наблюдения кромки (или плоскостью 1572 наблюдения кромки, описанной ниже) из начала 1560 координат (координат (0,0,0)) поля наблюдения (показано полем линий 1561, 1562, 1563, 1564 зрения) и базовой поверхностью 1520 или поверхностью 1511 турбинной лопатки 1510, пользователь по незнанию может быть не в состоянии увидеть реальную кромку 1512 турбинной лопатки 1510 при попытке помещения первого измерительного курсора 1541 на кромку 1512 турбинной лопатки 1510. Например, как показано на фиг. 22В, на основании угла наблюдения кромки (θ) пользователь неправильно помещает первый измерительный курсор 1541, который предназначен для помещения на реальной кромке 1512 турбинной лопатки 1510, в точке на лопатке 1510 турбины, которая не является кромкой 1512. Как показано на фиг. 22В, из-за неточного помещения курсора расстояние (В) между проецируемыми точками 1521, 1523 базовой поверхности на базовой поверхности 1520, связанными с измерительными курсорами 1541, 1543, (то есть, измеренная глубина выбоины 1513) будет меньше чем фактическая глубина (А) выбоины 1513, которая была бы измерена на основании правильной проецируемой точке 1571 базовой поверхности, если бы первый измерительный курсор 1541 был помещен на реальной кромке 1512. Этой ошибки, возможно, можно было бы избежать, если угол наблюдения кромки (θ) между линией 1570 угла наблюдения кромки (или плоскостью 1572 наблюдения кромки, описанной ниже) и базовой поверхностью 1520 или поверхностью 1511 турбинной лопатки 1510 был ближе к 90 градусам (или, если угол наблюдения кромки (ϕ) между линией 1570 угла наблюдения кромки и (или плоскостью 1572 наблюдения кромки, описанной ниже) и плоскостью 1580, нормальной к базовой поверхности 1520 или поверхности 1511 турбинной лопатки 1510, был ближе к 0 градусов).
[0174] В одной из форм осуществления изобретения, как показано на фиг. 22А и 22В, устройство 100 видеоконтроля может использовать систему предупреждения, в которой пользователю предоставляется визуальное или звуковое предупреждение, когда есть нежелательная (например, далекая от перпендикулярной) перспектива просмотра в позиции, где измерительный курсор помещается на кромку. В одной из форм осуществления изобретения, включающей измерение от точки до линии или другое измерение (площади, длины, глубины и т.п.), связанное с кромкой 1512 объекта 1510, включающее два или более измерительных курсоров 1541, 1542, расположенных вдоль кромки 1512 объекта 1510, чтобы сформировать первую измерительную линию 1551 (базовую линию), устройство 100 видеоконтроля (например, процессор CPU 150) использует обнаружение кромки, чтобы определить, находится ли измерительный курсор 1541, 1542 вблизи кромки (например, кромки 1512 турбинной лопатки 1510). Если один или несколько измерительных курсоров 1541, 1542 расположены вдоль кромки 1512, устройство 100 видеоконтроля (например, процессор CPU 150) может определить плоскость 1572 наблюдения кромки на основе трехмерных координат начала 1560 поля зрения (0,0,0) и трехмерных координат, связанных с измерительными курсорами 1541, 1542, расположенными вдоль кромки 1511 турбинной лопатки 1510. В одной из форм осуществления изобретения, как показано на фиг. 22В, устройство 100 видеоконтроля (например, процессор CPU 150) затем определяет угол наблюдения кромки (θ) между плоскостью 1572 наблюдения кромки и базовой поверхностью 1520, который в идеальном случае составляет 90 градусов (перпендикулярно) для лучшего угла наблюдения кромки для помещения курсора на кромке. В другой форме осуществления устройство 100 видеоконтроля (например, процессор CPU 150) определяет угол наблюдения кромки (ϕ) между плоскостью 1572 наблюдения кромки и плоскостью 1580, нормальной к базовой поверхности 1520, и в том числе трехмерные координаты, связанные с измерительными курсорами 1541, 1542, расположенными вдоль кромки 1511 турбинной лопатки 1510, который в идеале должен быть 0 градусов (параллельно) для лучшего угла наблюдения кромки для помещения курсора на кромке. Если вычисленный угол наблюдения кромки (θ или ϕ) находится за пределами допустимого диапазона углов или превышает порог (или находится ниже порога) (например, если θ меньше 60 градусов или если ϕ больше 30 градусов), то тогда устройство 100 видеоконтроля может отображать пользователю предупреждающее сообщение 1503 (например, "Для повышения точности захватите с более перпендикулярным видом для курсоров вблизи кромок"). Граница текстового окна 1504, показывающего результат измерения и угол наблюдения кромки, может быть подсвечена предупреждающим цветом (оранжевым) и мигать, чтобы предупредить пользователя. Кроме того, линия 1570 угла наблюдения кромки, которая лежит на плоскости 1572 наблюдения кромки и перпендикулярна к первой измерительной линии 1541 (базовой линии), также может быть показана в предупреждающем цвете (например, оранжевом) на виде 1502 облака точек. Как показано на фиг. 22А, вид 1502 облака точек включает в себя поле линий 1561, 1562, 1563, 1564 наблюдения и представление базовой плоскости 1520, чтобы помочь пользователю в переориентации наконечника зонда устройства видеоконтроля для улучшения угла наблюдения кромки для более точного помещения курсора.
[0175] В примере измерения расстояния от точки до линии, показанном на фиг. 22А и 22В, в дополнение к первому измерительному курсору 1541 и второму измерительному курсору 1542, размещенным на кромке 1512 турбинной лопатки 1510, третий курсор 1543 измерения также помещается вдоль края выбоины 1513. Аналогично, на фиг. 15А и 15С, третий или четвертый курсоры, участвующие в измерении и смещенные от первых двух измерительных курсоров, также могут быть помещены на другую кромку объекта. В одной из форм осуществления изобретения, помимо определения плоскости 1572 наблюдения кромки на основе первых двух измерительных курсоров 1541, 1542, которые образуют первую линию 1551 измерения (базовую линию), устройство 100 видео контроля (например, процессор CPU 150) также может определять, находится ли третий измерительный курсор 1543 вблизи кромки и является ли эта кромка параллельной или перпендикулярной к первой линии 1551 измерения (базовой линии). Устройство 100 видеоконтроля (например, процессор CPU 150) может определять плоскость точки наблюдения на основе трехмерных координат начала 1560 координат поля наблюдения (0,0,0) и трехмерных координат, связанных с третьим измерительным курсором 1543, и дополнительное смещение точки от третьего измерительного курсора 1543 в направлении, параллельном или перпендикулярном к первой линии 1551 измерения (базовой линии), в зависимости от направления обнаруженной кромки. В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) затем определяет угол наблюдения точки между плоскостью наблюдения точки и базовой поверхностью 1520, который в идеальном случае составляет 90 градусов (перпендикулярно) для оптимального угла наблюдения для помещения курсора на кромку. В другой форме осуществления устройство 100 видеоконтроля (например, процессор CPU 150) определяет угол наблюдения точки между плоскостью наблюдения точки и плоскостью, нормальной к базовой поверхности 1520, и в том числе трехмерные координаты, связанные с третьим измерительным курсором 1543, и дополнительное смещение точки от третьего измерительного курсора 1543, которое в идеале должно быть 0 градусов (параллельно) для лучшего угла наблюдения для помещения курсора на кромке.
[0176] Устройство 100 видеоконтроля (например, процессор CPU 150) затем определяет выбранный угол наблюдения между углом наблюдения кромки и углом наблюдения точки, при этом выбранный угол наблюдения затем используется для определения того, должно ли быть сделано предупреждение. Например, если (i) ни один из измерительных курсоров 1541, 1542, 1543 не находится вблизи кромки или (ii) по меньшей мере один из первого измерительного курсора 1541 или второго измерительного курсора 1542 находится вблизи кромки, и третий измерительный курсор 1543 находится вблизи кромки, выбранный угол наблюдения является наибольшим из угла наблюдения кромки и угла наблюдения точки. Если по меньшей мере один из первого измерительного курсора 1541 или второго измерительного курсора 1542 находится вблизи кромки, но третий измерительный курсор 1543 не находится, то выбранный угол наблюдения является углом наблюдения кромки. Если ни один из первого измерительного курсора 1541 или второго измерительного курсора 1542 не находится рядом с кромкой, но третий измерительный курсор 1543 находится вблизи кромки, то тогда выбранный угол наблюдения является углом наблюдения точки. Если выбранный угол наблюдения (θ или ϕ) находится за пределами допустимого диапазона углов или превышает пороговое значение (или находится ниже порогового значения), то тогда устройство 100 видеоконтроля может отобразить пользователю предупреждающее сообщение 1503 (например, "Для повышения точности захватите с более перпендикулярным видом для курсоров вблизи кромок"). Граница текстового окна 1504, показывающего результат измерения и угол наблюдения кромки, может быть подсвечена предупреждающим цветом (оранжевым) и мигать, чтобы предупредить пользователя.
[0177] Ввиду вышеизложенного, формы осуществления изобретения предупреждают пользователя о том, что угол наблюдения, вероятно, дает неточные места помещения курсора. Технический эффект - обеспечить более точные измерения с использованием размещений курсоров.
[0178] В некоторых ситуациях пользователь может захотеть выполнить измерения на турбинах или вблизи турбин, которые могут иметь лопатки с криволинейными профилями кромки. Например, если повреждение происходит по кромке, пользователю может потребоваться измерить, насколько далеко от кромки распространяется повреждение. Кроме того, пользователь также может использовать шлифовальный инструмент и удалять материал с кромки вокруг повреждения. В таком случае пользователю может потребоваться измерить как глубину повреждения, так и глубину шлифовки от исходной криволинейной кромки, чтобы обеспечить получение профиля, который не будет иметь концентраций напряжений, могущих привести к разрушению. Измерения от точки до линии, которые не учитывают криволинейность кромки лопатки, не могут предоставить требуемую информацию.
[0179] Преимущество, которое может быть реализовано с использованием представленной здесь технологии, может включать использование эталонных профилей, выход за пределы измерений расстояния от точки до линии и возможность учета кривизны объектов, таких как кромка турбинной лопатки. В одной из форм осуществления изобретения трехмерный эталонный профиль определяется с использованием точек вдоль кромки неповрежденной лопатки, а затем вызывается при измерении на изображении поврежденной или отремонтированной лопатки. Это позволяет производить измерения от криволинейной исходной поверхности. В этом случае базовая поверхность используется для ориентации эталонного профиля по стороне лопатки в трехмерном пространстве, как при его определении, так и при его вызове.
[0180] Когда профиль вызывается для использования на лопатке, которая была повреждена или зачищена от повреждений (шлифованием), эталонный профиль может быть расположен для выравнивания с оставшимися неизмененными кромками лопатки в трехмерном пространстве. Это можно сделать несколькими способами. Одним из примеров является использование трехмерных координат, связанных с курсорами базовой поверхности, для установки альтернативной системы координат на исходном изображении, на котором задан эталонный профиль, и на втором изображении, на котором он был вызван, а затем для использования этой альтернативной системы координат для определения и последующего восстановления профиля в трехмерном пространстве. Таким образом, размещение курсоров базовой поверхности в тех же позициях на лопатке на обоих изображениях будет позиционировать вызванный эталонный профиль в той же позиции и с той же ориентацией в трехмерном пространстве относительно лопатки, как это было на первом изображении, в котором он был определен, независимо от изменения положения или угла наблюдения.
[0181] Альтернативно, вызванный эталонный профиль может быть расположен непосредственно на трехмерном изображении. Положение вызванного эталонного профиля также может быть представлено на двумерном изображении путем идентификации двумерных пикселей, которые имеют лучи пикселей, проходящие в пределах максимального расстояния вызванного опорного профиля в трехмерном пространстве. В другой форме осуществления трехмерные координаты, определяющие эталонный профиль, могут быть определены с использованием модели системы автоматизированного проектирования (Computer-Aided Design, CAD) или физического примера лопатки, которые затем могут быть импортированы и размещены для выравнивания с лопаткой. В другой форме осуществления изобретения система может хранить несколько эталонных профилей, и пользователь может вызвать один или несколько из них для использования. В другой форме осуществления изобретения система может вычислять геометрические размеры с использованием вызванного эталонного профиля. Так, например, может быть вычислено самое короткое расстояние между вызванным эталонным профилем и назначенной пользователем трехмерной координатой поверхности или проецируемой трехмерной координатой базовой поверхности.
[0182] На фиг. 18 показаны рядом двумерный/трехмерный вид плоскости измерения (3 связанных курсора) и эталонный профиль, определяемый другими 7 курсорами. В эталонном профиле используется аппроксимация с помощью трехмерных кубических сплайнов, чтобы лучше следовать криволинейному профилю кромки с помощью всего лишь нескольких курсоров, как показано на облаке точек. В этом случае эталонный профиль определяется с помощью трехмерных координат поверхности, хотя он также может быть определен с использованием проецируемых трехмерных координат поверхности измерения. Трехмерные координаты поверхности в позициях курсора могут быть сохранены для представления эталонного профиля.
[0183] Устройства видеоконтроля могут быть использованы для выполнения различных измерений для определения глубины или высоты конкретной точки поверхности или между поверхностями, включая измерение зазора от конца лопасти до корпуса, глубины ямок или выбоин, внутреннего диаметра трубы, высоты сварного шва, колебания направляющей лопатки, ширины зазора и т.п.Например, на фиг. 23А-25 показаны различные используемые двумерные и трехмерные (облака точек) виды, которые могут измерять глубину ямки или выбоины. Одной из трудностей выполнения такого измерения глубины может быть точное размещение измерительного курсора в точке, например, в самой глубокой точке ямки или выбоины. Как будет объяснено и показано на фиг. 23А-25, визуальная индикация, такая как полупрозрачная графическая накладка 1650 плоскости глубины (например, светло-голубая), может быть размещена на пикселях, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньше заданного расстояния от плоскости 1652 глубины, которая параллельна базовой поверхности (например, плоскости) 1620 и проходит через точку 1624 измерения, соответствующую расположению измерительного курсора 1634, чтобы помочь пользователю поместить измерительный курсор 1634 в самой глубокой точке.
[0184] Фиг. 23А представляет собой изображение 1601, отображающее рядом двумерное изображение 1602 рассматриваемого объекта 1604, имеющего ямку или выбоину 1605, и трехмерный вид 1603 облака точек ямки или выбоины 1605, иллюстрирующее графическую накладку 1650 плоскости глубины (например, светло-голубого цвета), где измерительный курсор 1634 расположен далеко от самой глубокой точки. Фиг. 23В - увеличенный вид двумерного изображения 1602 рассматриваемого объекта 1604, имеющего ямку или выбоину 1605, показанную на фиг. 23А, иллюстрирующий графическую накладку 1650 плоскости глубины.
[0185] В одной из форм осуществления изобретения, как показано на фиг. 23А, в общей сложности три курсора 1631, 1632, 1633 базовой поверхности (или других указывающих устройств) размещаются на двухмерном изображении 1602 или виде 1603 облака точек, чтобы сформировать базовую поверхность 1620. Как пояснялось в отношении фиг. 19А и 19В, накладка 1640 базовой поверхности (например, зеленого цвета) может быть размещена на пикселях на двухмерном изображении 1602 или виде 1603 облака точек со связанными точками поверхности, имеющими трехмерные координаты поверхности меньшие, чем заданное расстояние от трехмерной базовой поверхности 1620, чтобы помочь пользователю оценить соответствие между базовой поверхностью 1620 и поверхностью 1604 объекта.
[0186] При измерении глубины, показанном на фиг. 23А и 23В, измерительный курсор 1634 должен быть помещен в самую глубокую точку ямки или выбоины 1605, чтобы точно измерить глубину 1670 аномалии. Для того, чтобы помочь пользователю в точном размещении измерительного курсора 1634, устройство 100 видеоконтроля (например, процессор CPU 150) может определить плоскость 1652 глубины, которая параллельна базовой поверхности (например, плоскости) 1620 и проходит через точку 1624 поверхности измерения, соответствующую позиции измерительного курсора 1634. Затем устройство 100 видеоконтроля может поместить полупрозрачную графическую накладку 1650 плоскости глубины (например, светло-голубого цвета) на пикселях на двумерном изображении 1602 и виде 1603 облака точек, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньшие заранее заданного расстояния от плоскости 1652 глубины, чтобы помочь пользователю поместить измерительный курсор 1634 в самой глубокой точке.
[0187] Чтобы определить, где поместить графическую накладку 1650 плоскости глубины на пикселе на двумерном изображении, устройство 100 видеоконтроля (например, процессор CPU 150) может определить, связан ли этот пиксель с точкой поверхности, имеющей трехмерные координаты меньшие (или в пределах) заданного расстояния от плоскости 1652 глубины. В некоторых формах осуществления изобретения расстояние между точкой поверхности и плоскостью 1652 глубины можно определить как расстояние по перпендикуляру, тогда как в других формах осуществления это расстояние может быть неперпендикулярным расстоянием. В одной из форм осуществления изобретения точки поверхности объекта, расположенные вблизи плоскости 1652 глубины, могут быть определены фиксированным расстоянием по перпендикуляру (например, ±0,1 мм), переменным расстоянием по перпендикуляру или упрощенной метрикой, такой как расстояние z-значения, чтобы обеспечить простоту вычисления. В одной из форм осуществления изобретения графическая накладка 1650 плоскости глубины включает в себя любую точку поверхности, имеющую расстояние по перпендикуляру от плоскости 1652 глубины, составляющее менее 0,2% от z-значения точки 1624 поверхности. В другой форме осуществления изобретения графическая накладка 1650 плоскости глубины включает в себя любые точки поверхности, имеющие расстояние по перпендикуляру от плоскости 1652 глубины менее 1% от измеряемой глубины 1670.
[0188] В одной из форм осуществления изобретения устройство 100 видеоконтроля (например, процессор CPU 150) может выполнять преобразование координат таким образом, чтобы преобразованное значение z для всех точек на плоскости 1652 глубины составляло z=0. Затем для данной точки поверхности устройство 100 видеоконтроля (например, процессор CPU 150) может сравнить фактическое (не преобразованное) значение z точки поверхности с преобразованным значением z. Если абсолютная величина преобразованного значения z (которое предусматривает расстояние по перпендикуляру от базовой поверхности) составляет менее 0,2% от фактического значения z, пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку.
[0189] В другой форме осуществления изобретения, не требующей преобразования координат, для каждого пикселя устройство 100 видеоконтроля (например, процессор CPU 150) может определять перпендикулярную проекцию на плоскость 1652 глубины и определять расстояние от точки поверхности до плоскости 1652 глубины в перпендикулярном направлении. Если это расстояние по перпендикуляру составляет менее 0,2% от реального значения z, то пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку.
[0190] В другой форме осуществления изобретения, не требующей перпендикулярного расстояния, для каждого пикселя устройство 100 видеоконтроля (например, процессор CPU 150) может определять реальную координату z для точки поверхности и координату z для соответствующей точки проекции на плоскости 1652 глубины, проецируемой из этой точки поверхности, где такая проекция не обязательно выполняется в перпендикулярном направлении. Если разница между значением z на плоскости 1652 глубины и значением z соответствующей точки поверхности составляет менее 0,2% от значения z, то пиксель, связанный с этой точкой поверхности, может быть включен в графическую накладку.
[0191] Как показано на фиг. 23А-25, если полученная в результате измерения глубина имеет отрицательное значение, указывающее, что точка 1624 измерения находится ниже базовой поверхности 1620, накладка 1660 градиента цвета глубины может быть использовано для выделения областей глубже, чем измерительный курсор 1634 и связанные с ними точки 1624 измерения, первым цветом 1662 (например, красным), который указывает наиболее глубокие точки (самые далекие от базовой плоскости 1620), и вторым цветом 1661 (например, темно-синим), который указывает наиболее неглубокие точки (самые близкие к плоскости 1652 глубины). В одной из форм осуществления изобретения цвет графической накладки 1650 плоскости глубины должен отличаться от цветов градиента на близлежащих глубинах (например, светло-голубая накладка отличается от темно-синей накладки, используемой в градиенте для самой неглубокой точки). В одной из форм осуществления изобретения накладка 1660 градиента цвета глубины выделяет точки поверхности ниже плоскости 1652 глубины вплоть до самой глубокой точки аномалии. Накладки цвета могут отличаться и могут быть предварительно запрограммированы и/или выбраны пользователем или другими способами.
[0192] Устройство 100 видеоконтроля изображения (например, процессор CPU 150) может проводить операцию заливки для поиска точек поверхности, которые должны быть включены при составлении шкалы накладки 1660 градиента цвета глубины, связаны с точкой 1624 измерения и являются более глубокими, чем, например, плоскость на полпути между базовой поверхностью 1620 и плоскостью 1652 глубины, чтобы избежать включения нежелательных или не относящихся к делу точек поверхности в графическую накладку 1650 плоскости глубины. Таким образом, несвязанные отрицательные участки не являются частью составления шкалы накладки 1660 градиента цвета глубины, чтобы сохранить накладку 1660 градиента цвета глубины со шкалой для вероятного исследуемого участка, вместо того, чтобы чрезмерно включать отдаленные точки на других поверхностях, и т.д. В одной из форм осуществления изобретения операция заливки начинается с пикселя, связанного с курсором 1634 поверхности измерения и/или точкой 1624 измерения, и определяет, какие пиксели связаны с этим пикселем. Если эти пиксели связаны с точками поверхности, которые глубже, чем плоскость, находящаяся на полпути между базовой поверхностью 1620 и плоскостью 1652 глубины, они включаются как связанные точки в операции заливки. Затем аналогично оцениваются пиксели, которые связаны с этими пикселями. Когда операция заливки завершена, накладка 1660 градиента цвета глубины может выбирать шкалу на основе самой глубокой точки (точек), идентифицированной операцией заливки.
[0193] В одном примере графическая накладка 1650 плоскости глубины может обновляться в реальном времени, когда измерительный курсор 1634 перемещается пользователем. В других примерах, например, с типами измерений, такими как измерения профиля глубины и измерения глубины участка, графическая накладка 1650 плоскости глубины может быть показана, когда измерительный курсор 1634 активен, и может быть отключена, когда результат измерения активен. В одной из форм осуществления изобретения, когда последний измерительный курсор 1634 помещен и результат измерения отображается и становится активным, графическая накладка 1650 плоскости глубины кратковременно отображается, а затем скрывается до тех пор, пока не будет активирован курсор. Отображение в реальном времени графической накладки 1650 плоскости глубины и накладки 1660 градиента цвета глубины во время измерения позволяет пользователю более точно поместить измерительный курсор 1634 на желаемой точке поверхности (например, самой глубокой точке ямки или выбоины 1605).
[0194] Например, как показано на фиг. 23А и 23В, когда измерительный курсор 1634 расположен далеко от самой глубокой точки ямки или выбоины 1605, графическая накладка 1650 плоскости глубины и накладка 1660 градиента цвета глубины показывают, что имеется несколько точек поверхности, которые глубже, чем точка 1624 измерения, и указывают, что измерительный курсор 1634 должен быть перемещен в сторону самых глубоких точек (например, показанных первым цветом 1662 (например, красным) в накладке 1660 градиента цвета глубины). Это также показано на виде 1603 облака точек на фиг. 23А, где глубина 1670 измерительного курсора 1634 и соответствующая точка 1624 измерения расположены далеко от самой глубокой точки 1662 ямки или выбоины 1605.
[0195] Относительно большая площадь накладки 1660 градиента цвета глубины на фиг. 23А и 23В указывает, например, пользователю, что есть несколько точек поверхности, которые глубже, чем точка 1624 измерения, связанная с измерительным курсором 1634. Как показано на фиг. 24А и 24В, когда измерительный курсор 1634 перемещается в сторону более глубоких точек (показанных в первом цвете 1662 (например, красном) на накладке 1660 градиента цвета глубины), площадь накладки 1660 градиента цвета глубины уменьшается, что указывает на то, что измерительный курсор 1634 приближается к самой глубокой точке. В частности, накладка 1660 градиента цвета глубины на фиг. 24А и 24В показывает, что в накладке 1660 градиента цвета глубины имеется меньше точек поверхности, указывающих пользователю, что имеется несколько точек поверхности, которые глубже, чем точка 1624 измерения. Направляемый графической накладкой 1650 плоскости глубины и накладкой 1660 градиента цвета глубины на фиг. 25, пользователь переместил измерительный курсор 1634 в самую глубокую точку ямки или выбоины 1605, так что измерительный курсор 1634 (и соответствующая точка 1624 измерения) точно помещен в самую глубокую точку ямки или выбоины 1605, о чем свидетельствует отсутствие видимой накладки 1660 градиента цвета глубины. Глубина 1670 точки 1624 измерения, связанной с измерительным курсором 1634, от базовой поверхности 1620 показана на виде 1603 облака точек на фиг. 25.
[0196] Фиг. 26 и 27 служат еще одной иллюстрацией использования графической накладки 1750 плоскости глубины и накладки 1760 градиента цвета глубины на двумерном виде 1702 и трехмерном виде 1703 (облаке точек), используемых для измерения глубины ямки или выбоины 1705. Как показано на фиг. 26, когда измерительный курсор 1734 расположен далеко от самой глубокой точки ямки или выбоины 1705, графическая накладка 1750 плоскости глубины и накладка 1760 градиента цвета глубины (переход от неглубоких точек 1761 к самым глубоким точкам 1762) показывают, что существует несколько точек поверхности, которые глубже, чем точка 1724 измерения; это указывает на то, что измерительный курсор 1734 должен быть перемещен в сторону самых глубоких точек (например, показанных первым цветом 1762 (например, красным) в накладке 1760 градиента цвета глубины). Это также показано на виде 1703 облака точек на фиг. 26, где глубина 1770 измерительного курсора 1734 и связанной с ним точки 1724 измерения расположены далеко от самой глубокой точки 1762 углубления или выбоины 1705.
[0197] Относительно большая площадь накладки 1760 градиента цвета глубины на фиг. 26 указывает, что есть несколько точек поверхности, которые глубже, чем точка 1724 измерения, связанная с измерительным курсором 1734. Направляемый графической накладкой 1750 плоскости глубины и накладкой 1760 градиента цвета глубины на фиг. 27 измерительный курсор 1734 был перемещен, например, пользователем, в самую глубокую точку ямки или углубления 1705, так что измерительный курсор 1734 (и соответствующая точка измерения 1724) точно размещается в самой глубокой точке ямки или выбоины 1705, о чем свидетельствует отсутствие видимой накладки 1760 градиента цвета глубины. Глубина 1770 точки 1724 измерения, связанной с измерительным курсором 1734, от базовой поверхности 1720 показана на виде 1703 облака точек на фиг. 27. Как показано на фиг. 26 и 27, контролируемая ямка или выбоина 1705 имеет относительно плоское дно, ведущее к графической накладке 1750 плоскости глубины в самой глубокой точке, которая показывает, что имеется несколько точек поверхности на максимальной глубине или вблизи нее.
[0198] Фиг. 28 представляет собой изображение 1801, отображающее рядом друг с другом двумерное изображение 1802 области между концом турбинной лопатки 1805 и корпусом 1806 и трехмерный вид 1803 облака точек той же самой области, и иллюстрирующее графическую накладку плоскости глубины. Это измерение глубины (или измерение высоты) может дать расстояние от конца до корпуса или зазор 1870 при контроле турбины. Как и в примере на фиг. 23А-25, базовая поверхность 1820 определяется на основе трех курсоров базовой поверхности, показанных на фиг. 28. При измерении от конца до корпуса, показанного на фиг. 28, измерительный курсор 1834 должен быть размещен на кромке или конце турбинной лопатки 1805 для точного измерения глубины (зазора 1870 от конца до корпуса). В примере, показанном на фиг. 28, измерительный курсор 1834 помещается на турбинной лопатке 1805, а графическая накладка 1850 плоскости глубины (например, светло-голубая) может быть помещена на пиксели, связанные с точками поверхности, имеющими трехмерные координаты поверхности меньше заданного расстояния от плоскости 1852 глубины, которая параллельна базовой поверхности (например, плоскости) 1820 и проходит через точку 1824 измерения, соответствующую позиции измерительного курсора 1834, чтобы помочь пользователю поместить измерительный курсор 1834 на кромке или конце турбинной лопатки 1805. Поскольку графическая накладка 1850 плоскости глубины на фиг. 28 очевидно выровнена с кромкой или концом турбинной лопатки 1805, пользователь может быть уверен, что измерительный курсор 1834 расположен в точке, которая представляет собой зазор 1870 конца большей части турбинной лопатки 1805. В этой форме осуществления, поскольку результат измерения глубины (зазор 1870 конца) является положительным, градиент цвета отсутствует.
[0199] Устройства видеоконтроля могут использоваться для проведения различных измерений для определения расстояния между точками поверхности или поверхностями, включая измерение ширины сварного шва или паза. Например, на фиг. 29А-29В показаны различные двумерные и трехмерные (облако точек) виды, используемые для измерения ширины паза. В некоторых случаях может возникнуть проблема при измерении расстояния поперек паза, при котором может быть сложно визуально определить и разместить курсоры в точках на каждой стороне паза, где линия между точками является нормальной (например, не диагональной) к каждой из стенок, чтобы получить точную ширину паза. Как будет объяснено и показано на фиг. 29А-29В, визуальные индикации, такие как первая полупрозрачная графическая накладка 1950 плоскости кромки (например, светло-голубая) и вторая полупрозрачная графическая накладка 1960 плоскости кромки, могут быть размещены на пикселях, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньше заданного расстояния от первой плоскости 1952 кромки и второй плоскости 1962 кромки, соответственно, которые перпендикулярны к трехмерной линии 1970 между точками 1921, 1922 измерения, соответствующими позициям измерительных курсоров 1931, 1932, чтобы помочь пользователю или другим средствам размещения разместить измерительные курсоры 1931, 1932 на стенках 1905, 1906 паза 1904.
[0200] Фиг. 29А представляет изображение 1901, отображающее рядом друг с другом двумерное изображение 1902 паза 1904, имеющего первую стенку 1905 и вторую стенку 1906, и трехмерный вид 1903 облака точек паза 1904, и иллюстрирующее первую полупрозрачную графическую накладку 1950 плоскости кромки (например, светло-голубую) и вторую полупрозрачную графическую накладку 1960 плоскости кромки, где измерительные курсоры 1931, 1932 расположены по диагонали напротив друг от друга на первой стенке 1905 и второй стенке 1906.
[0201] В одной из форм осуществления изобретения, как показано на фиг. 29А, первый измерительный курсор 1931 размещен на двумерном изображении 1902 или виде 1903 облака точек в первой точке 1921 измерения на первой стенке 1905 паза 1904. Аналогично, второй измерительный курсор 1932 размещен на двумерном изображении 1902 или виде 1903 облака точек во второй точке 1922 измерения на второй стенке 1906 паза 1904. При измерении расстояния, показанном на фиг. 29А, измерительные курсоры 1931, 1932 могут быть расположены напротив друг друга для точного измерения ширины паза 1904. В некоторых случаях измерительные курсоры 1931, 1932 должны располагаться непосредственно напротив друг друга. Чтобы помочь пользователю в точном размещении измерительных курсоров 1931, 1932, устройство 100 видеоконтроля (например, процессор CPU 150) может определить трехмерную линию 1970 между точками 1921, 1922 измерения. Устройство 100 видеоконтроля (например, процессор CPU 150) может затем определить первую плоскость 1952 кромки, которая перпендикулярна (нормальна) к трехмерной линии 1970 и проходит через первую точку 1921 измерения, соответствующую позиции первого измерительного курсора 1931. Затем устройство 100 видеоконтроля может поместить первую полупрозрачную графическую накладку 1950 плоскости кромки (например, светло-голубую) на пикселях на двумерном изображении 1902 и виде 1903 облака точек, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньше заданного расстояния от первой плоскости 1952 кромки, чтобы помочь пользователю поместить первый измерительный курсор 1931 на первой стенке 1905 паза 1904. Устройство 100 видеоконтроля (например, процессор CPU 150) также может определить вторую плоскость 1962 кромки, которая перпендикулярна (нормальна) к трехмерной линии 1970 (и/или параллельна первой плоскости 1952 кромки) и проходит через вторую точку 1922 измерения, соответствующую позиции второго измерительного курсора 1932. Затем устройство 100 видеоконтроля может поместить вторую полупрозрачную графическую накладку 1960 плоскости кромку (например, светло-голубого цвета) на пикселях на двумерном изображении 1902 и виде 1903 облака точек, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньше заданного расстояния от второй плоскости 1962 кромки, чтобы помочь пользователю поместить второй измерительный курсор 1932 на второй стенке 1906 паза 1904 и напротив, например, непосредственно напротив, первого измерительного курсора 1931.
[0202] Чтобы определить, следует ли поместить графическую накладку 1950, 1960 плоскости кромки на пиксель в двумерном изображении, устройство 100 видео контроля (например, процессор CPU 150) может определить, связан ли этот пиксель с точкой поверхности, имеющей трехмерные координаты поверхности меньшие (или в пределах) заданного расстояния от плоскостей 1952, 1962 кромок. В некоторых формах осуществления расстояние между точкой поверхности и плоскостями 1952, 1962 кромок может быть определено как расстояние по перпендикуляру, в то время как в других формах осуществления расстояние может быть неперпендикулярным расстоянием. В одной из форм осуществления изобретения графические накладки 1950, 1960 плоскостей кромок включают в себя любую точку поверхности, имеющую расстояние по перпендикуляру от плоскостей 1952, 1962 кромок менее 0,2% от значения х точек 1921, 1922 измерения. В другой форме осуществления графические накладки 1950, 1960 включают в себя любые точки поверхности, имеющие расстояние по перпендикуляру от плоскостей 1952, 1962 кромок менее 1% от измеренной длины 1970.
[0203] В одном примере графические накладки 1950, 1960 могут обновляться в реальном времени, когда измерительные курсоры 1931, 1932 перемещаются пользователем. В других примерах графические накладки 1950, 1960 плоскостей кромок могут быть показаны, когда измерительные курсоры 1931, 1932 являются активными, и могут быть отключены, когда активен результат измерения. В одной из форм осуществления изобретения, когда второй измерительный курсор 1932 размещен и результат измерения отображается и становится активным, графические накладки 1950, 1960 кратковременно отображаются, а затем скрываются до тех пор, пока не будет активирован курсор. Отображение в реальном времени графических накладок 1950, 1960 плоскостей кромок во время измерения позволяет пользователю более точно размещать измерительные курсоры 1931, 1932 на желаемых точках поверхности (например, точках на каждой стороне паза 1904, где трехмерная линия 1970 между точками 1921, 1922 измерения является нормальной (например, не диагональной) к каждой из стенок 1905, 1906 и может давать точную ширину паза 1904).
[0204] Например, как показано на фиг. 29А, когда трехмерная линия 1970 между измерительными курсорами 1931, 1932 (и точками 1921, 1922) измерения не является нормальной (например, диагональной) к стенкам 1905, 1906 паза 1904), графические накладки 1950, 1960 плоскостей кромок и плоскости 1952, 1962 кромок не выровнены со стенками 1905, 1906, указывая пользователю, что один или оба измерительных курсора 1931, 1932, возможно, придется переместить. В противном случае измеренная длина трехмерной линии 1970, которая диагональна к стенкам 1905, 1906 паза 1904, может дать неточное измерение ширины паза 1904 (то есть слишком большую ширину).
[0205] Как показано на фиг. 29 В, когда второй измерительный курсор 1932 перемещается так, что трехмерная линия 1970 между курсорами 1931, 1932 (и точками 1921, 1922 измерения) является нормальной (например, не диагональной) к стенкам 1905, 1906 паза 1904, графические накладки 1950, 1960 плоскостей кромок и плоскости 1952, 1962 кромок выровнены со стенками 1905, 1906, указывая, что измеренная ширина паза 1904 является точной.
[0206] Устройства видеоконтроля могут использоваться для выполнения различных измерений для определения расстояния от точки до линии, включая измерения повреждений кромки турбинной лопатки и измерения ширины/длины зазора, канавки или сварного шва. Например, на фиг. 30А-30В показаны различные двумерные и трехмерные (облака точек) виды, используемые для измерения повреждений кромки турбинной лопатки. В некоторых случаях проблема, возникающая при измерении от точки до линии кромки турбинной лопатки, заключается в том, что может быть трудно визуально определить и разместить курсоры в точках на реальной кромке турбинной лопатки для обеспечения точного измерения поврежденной части. Как будет объяснено и показано на фиг. 30А-30В, визуальные индикации, такие как первая полупрозрачная графическая накладка 2050 плоскости кромки (например, светло-голубая) и вторая полупрозрачная графическая накладка 2060 плоскости кромки, могут быть размещены на пикселях, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньше заранее заданного расстояния от первой плоскости 2052 кромки и второй плоскости 2062 кромки, соответственно. Плоскости 2052, 2062 кромок могут быть перпендикулярны к трехмерной линии 2070 расстояния между третьим измерительным курсором 2036 и трехмерной базовой линией 2071 между первым измерительным курсором 2034 и вторым измерительным курсором 2035 и проходить через проецируемые точки 2024, 2025, 2026 базовой поверхности, соответствующие позициям измерительных курсоров 2034, 2035, 2036, чтобы помочь пользователю разместить измерительные курсоры 2034, 2035 на кромке 2005 турбинной лопатки 2004 и на кромке недостающей части 2006.
[0207] Фиг. 30А представляет собой изображение 2001, отображающее рядом двумерное изображение 2002 кромки 2005 турбинной лопатки 2004, имеющей недостающую часть 2006, и трехмерный вид 2003 облака точек кромки 2005 турбинной лопатки 2004, иллюстрирующие графические накладки 2050, 2060, где измерительные курсоры 2034, 2035 не расположены на кромке 2005 турбинной лопатки 2004.
[0208] В одной из форм осуществления изобретения, как показано на фиг. 30А, устройство 100 видеоконтроля (например, процессор CPU 150) может определить трехмерную базовую поверхность 2020 (например, плоскость измерения), образованную курсорами 2031, 2032, 2033 базовой поверхности, как описано выше со ссылкой на фиг. 15А и 17. Как показано на фиг. 30А, например, в общей сложности три измерительных курсора 2034, 2035, 2036 затем могут располагаться на пикселях 2044, 2045, 2046 измерительных курсоров изображения 2001 для выполнения измерения от точки до линии. Трехмерная траектория, связанная с каждыми двумерными пикселями 2044, 2045, 2046 измерительных курсоров изображения 2001, известна и может быть использована для вычисления, где линия траектории от каждого пикселя 2044, 2045, 2046 измерительных курсоров изображения 2001 позиционируется (например, это может быть дробным положением пикселя, при котором будет использоваться интерполяция) и пересекается с базовой поверхностью 2020 в трехмерном пространстве, чтобы определить проецируемые точки 2024, 2025, 2026 базовой поверхности, связанные с этими пикселями 2044, 2045, 2046 измерительных курсоров, на базовой поверхности 2020.
[0209] Для проведения измерения от точки до линии устройство 100 видеоконтроля (например, процессор CPU 150) может определить базовую линию 2071 между проецируемыми точками 2024, 2025 опорной поверхности, соответствующими измерительным курсорам 2034, 2035. Устройство 100 видеоконтроля (например, процессор CPU 150) может затем определить трехмерную линию 2070 расстояния между проецируемой точкой 2026 поверхности, соответствующей третьему измерительному курсору 2036, и базовой линией 2071. Устройство 100 видеоконтроля (например, процессор CPU 150) может определить первую плоскость 2052 кромки, которая перпендикулярна (нормальна) к трехмерной линии 2070 расстояния и проходит через первую и вторую проецируемые точки 2024, 2025 базовой поверхности, соответствующие измерительным курсорам 2034, 2035. Затем устройство 100 видеоконтроля может поместить первую полупрозрачную графическую накладку 2050 плоскости кромки (например, светло-голубого цвета) на пиксели на двумерном изображении 2002 и виде 2003 облака точек, связанные с точками поверхности, имеющими трехмерные координаты поверхности меньшие, чем заданное расстояние от первой плоскости 2052 кромки, чтобы помочь пользователю расположить измерительные курсоры 2034, 2035 таким образом, чтобы соответствующие проецируемые точки 2024, 2025 опорной поверхности соответствовали реальной кромке 2005 турбинной лопатки 2004. Устройство 100 видеоконтроля (например, процессор CPU 150) также может определить вторую плоскость 2062 кромки, которая является перпендикулярной (нормальной) к трехмерной линии 2070 расстояния (и/или параллельной первой плоскости 2052 кромки) и проходит через третью проецируемую точку 2026 базовой поверхности, соответствующую позиции третьего измерительного курсора 2036 для помещения на кромке отсутствующей части 2006. Затем устройство 100 видеоконтроля может поместить вторую полупрозрачную графическую накладку 2060 (например, светло-голубого цвета) на пикселях на двумерном изображении 2002 и виде 2003 облака точек, связанных с точками поверхности, имеющими трехмерные координаты поверхности меньшие заданного расстояния от второй плоскости 2062 кромки.
[0210] Чтобы определить, следует ли поместить графическую накладку 2050, 2060 плоскости кромки на пиксель на двумерном изображении, устройство 100 видеоконтроля (например, процессор CPU 150) определяет, связан ли этот пиксель с точкой поверхности, имеющей трехмерные координаты поверхности меньшие (или в пределах) заданного расстояния от плоскостей 2052, 2062 кромки. В некоторых формах осуществления изобретения расстояние между точкой поверхности и плоскостями 2052, 2062 кромки может быть определено как расстояние по перпендикуляру, тогда как в других формах осуществления расстояние может быть неперпендикулярным расстоянием. В одной из форм осуществления изобретения графические накладки 2050, 2060 плоскостей кромки включают в себя любую точку поверхности, имеющую расстояние по перпендикуляру от плоскостей 2052, 2062 кромки менее 0,2% от значения х точек 2021, 2022 поверхности. В другой форме осуществления графические накладки 2050, 2060 плоскостей кромки включают в себя любые точки поверхности, имеющие расстояние по перпендикуляру от плоскостей 2052, 2062 кромки менее 1% трехмерной линии 2070 расстояния.
[0211] В одном примере графические накладки 2050, 2060 плоскостей кромки могут обновляться в реальном времени, когда измерительные курсоры 2034, 2035, 2036 перемещаются, например, пользователем. В других примерах графические накладки 2050, 2060 плоскостей кромки могут быть показаны, когда измерительные курсоры 2034, 2035, 2036 измерения активны, и могут быть отключены, когда активен результат измерения. В одной из форм осуществления изобретения, когда третий измерительный курсор 2036 размещен и результат измерения отображается и становится активным, графические накладки 2050, 2060 плоскостей кромки кратковременно отображаются, а затем скрываются до тех пор, пока не будет активирован курсор. Отображение графических накладок 2050, 2060 плоскостей кромок в режиме реального времени во время измерения позволяет пользователю более точно размещать измерительные курсоры 2034, 2035 на реальной кромке 2005 турбинной лопатки 2004 и на кромке недостающего участка 2006.
[0212] Например, как показано на фиг. 30А, когда измерительные курсоры 2034, 2035 не помещены на реальную кромку 2005 турбинной лопатки 2004, первая графическая накладка 2050 плоскости кромки и первая плоскость 2052 кромки не выровнены с кромкой 2005 турбинной лопатки 2004, что указывает на то, что один или оба измерительных курсора 2034, 2035 должны быть перемещены. В противном случае измеренная длина трехмерной линии 2070 расстояния даст неточное измерение длины недостающего участка 2006.
[0213] Как показано на фиг. 30В, когда измерительные курсоры 2034, 2035 размещены на реальной кромке 2005 турбинной лопатки 2004, первая графическая накладка 2050 плоскости кромки и первая плоскость 2052 кромки выровнены с реальной кромкой 2005 турбинной лопатки 2004, что указывает на то, что измеренная длина недостающей части 2006 является точной.
[0214] Фиг. 31 иллюстрирует пример блок-схемы последовательности операций способа 2100 измерения элемента в примере осуществления изобретения. На этапе 2101 изображение рассматриваемого объекта может отображаться на мониторе. На этапе 2102 центральный процессор может определить трехмерные координаты множества точек на поверхности рассматриваемого объекта. На этапе 2103 один или несколько измерительных курсоров могут быть размещены на изображении с помощью указывающего устройства. На этапе 2104 центральный процессор может определять точку измерения, соответствующую позиции по меньшей мере одного измерительного курсора. На этапе 2105 центральный процессор может определять плоскость кромки, при этом плоскость кромки проходит через точку измерения. На этапе 2106 центральный процессор может определить расстояние между множеством точек на поверхности рассматриваемого объекта и плоскостью кромки. На этапе 2107 центральный процессор может сравнить расстояние между множеством точек на поверхности рассматриваемого объекта и плоскостью кромки с заранее заданным порогом расстояния. На этапе 2108 графическая накладка плоскости кромки отображается на пикселях изображения, связанных с множеством точек на поверхности рассматриваемого объекта, имеющих расстояние до плоскости кромки, которое меньше заранее заданного порога расстояния.
[0215] На основании вышеизложенного, формы осуществления изобретения позволяют определить, точно ли помещен измерительный курсор при проведении измерения. Технический эффект заключается в обеспечении более точных измерений, например аномалии на объекте. Если, например, размеры аномалии превышают требования к допуску или другой порог, контролер может принять предупредительные меры (т.е. вывести машину или устройство из эксплуатации) до тех пор, пока не будет проведен ремонт.
[0216] Как будет понятно специалисту в данной области техники, аспекты настоящего изобретения могут быть воплощены в виде системы, способа или программного продукта для компьютера. Соответственно, аспекты настоящего изобретения могут принимать форму полностью аппаратной формы осуществления, полностью программной формы осуществления (в том числе встроенного программного обеспечения, резидентного программного обеспечения, микропрограммы и т.п.) или формы осуществления, сочетающей программные и аппаратные аспекты, которые могут в общем именоваться в настоящем документе как "служба", "схема", "электронные схемы", "модуль" и/или "система". Кроме того, аспекты настоящего изобретения могут принимать форму программного продукта для компьютера, воплощенного на одном или более машиночитаемых носителях, имеющих машиночитаемый программный код, воплощенный на нем.
[0217] Может использоваться любая комбинация одного или более машиночитаемых носителей. Машиночитаемый носитель может представлять собой машиночитаемый носитель сигналов или машиночитаемый носитель данных. Машиночитаемый носитель данных может быть, например, но не ограничивается, электронной, магнитной, оптической, электромагнитной, инфракрасной или полупроводниковой системой, аппаратом или устройством или некоторой подходящей комбинацией вышеперечисленного. Более конкретные примеры (неисчерпывающий список) машиночитаемых носителей данных включают в себя следующее: электрическое соединение, имеющее один или несколько проводов, портативную компьютерную дискету, жесткий диск, оперативное запоминающее устройство (Random Access Memory, RAM), постоянное запоминающее устройство (Read-Only Memory, ROM), стираемое программируемое постоянное запоминающее устройство (Erasable Programmable Readonly Memory, EPROM или флэш-память), оптическое волокно, портативное постоянное запоминающее устройство на компакт-диске (Compact Disk Read Only Memory, CD-ROM), оптическое запоминающее устройство, магнитное запоминающее устройство или любую другую подходящую комбинация вышеперечисленного. В контексте настоящего документа машиночитаемый носитель данных может представлять собой некоторой материальный носитель, который может содержать или хранить программу для использования системой, аппаратом или устройством для выполнения команд или вместе с ними.
[0218] Программный код и/или исполняемые команды, воплощенные на машиночитаемом носителе, могут передаваться с использованием любого подходящего носителя, включая, но не ограничиваясь этим, беспроводной, проводной, волоконно-оптический кабель, радиочастотный и т.п. или любую подходящую комбинацию вышеперечисленного.
[0219] Программный код для компьютера для выполнения операций аспектов настоящего изобретения может быть записан на некоторой комбинации из одного или более языков программирования, включая объектно-ориентированный язык программирования, такой как Java, Smalltalk, С++ или т.п., и обычные процедурные языки программирования, такие как язык программирования "С" (Си) или аналогичные языки программирования. Программный код может полностью выполняться на компьютере (устройстве) пользователя, частично на компьютере пользователя, в виде отдельного пакета программ, частично на компьютере пользователя, а частично на удаленном компьютере или полностью на удаленном компьютере или сервере. В последнем случае удаленный компьютер может быть подключен к компьютеру пользователя через сеть любого типа, включая локальную сеть (Local Area Network, LAN) или глобальную сеть (Wide Area Network, WAN), или может быть выполнено подключение к внешнему компьютеру (для примера, через Интернет с помощью поставщика услуг Интернета).
[0220] Аспекты настоящего изобретения описаны здесь со ссылкой на иллюстративные блок-схемы и/или блок-схемы способов, устройств (систем) и программных продуктов для компьютера в соответствии с формами осуществления изобретения. Понятно, что каждый блок иллюстративной блок-схемы и/или блок-схемы и комбинации блоков в иллюстративной блок-схеме и/или блок-схемах могут быть реализованы с помощью команд компьютерной программы. Эти команды компьютерной программы могут быть предоставлены процессору компьютера общего назначения, компьютера специального назначения или другому программируемому устройству обработки данных для изготовления машины, так что команды, которые выполняются посредством процессора компьютера или другого программируемого устройства обработки данных, создают средства для реализации функций/действий, указанных в блоке или блоках блок-схемы последовательности операций и/или блок-схемы.
[0221] Эти команды компьютерной программы также могут храниться на машиночитаемом носителе, который может заставить компьютер, другое программируемое устройство обработки данных или другие устройства функционировать определенным образом, так что команды, хранящиеся на машиночитаемом носителе, производят изделие, включающее команды, которые реализуют функцию/действие, указанное в блоке или блоках блок-схемы последовательности операций и/или блок-схемы.
[0222] Команды компьютерной программы также могут быть загружены в компьютер, другое программируемое устройство обработки данных или на другие устройства, чтобы вызвать ряд рабочих этапов, которые должны выполняться на компьютере, другом программируемом устройстве или других устройствах для создания процесса, реализуемого компьютером с тем, чтобы команды, выполняемые на компьютере или другом программируемом устройстве, обеспечивали процессы для реализации функций/действий, в блоке или блоках блок-схемы последовательности операций и/или блок-схемы.
[0223] В той степени, в которой в пунктах формулы изобретения содержится фраза "по меньшей мере один из" при ссылке на множество элементов, она предназначена для обозначения по меньшей мере одного или более из перечисленных элементов и не ограничивается по меньшей мере одним из каждого элемента. Например, "по меньшей мере один из элемента А, элемента В и элемента С" предназначено для обозначения только одного элемента А или только одного элемента В, или только одного элемента С, или некоторой их комбинации. "По меньшей мере один из элемента А, элемента В и элемента С" не должен ограничиваться по меньшей мере одним из элемента А, по меньшей мере одним из элемента В и по меньшей мере одним из элемента С.
[0224] В этом описании используются примеры для раскрытия изобретения, включая лучший вариант, а также для того, чтобы любой специалист в данной области мог практически использовать изобретение, включая изготовление и использование любых устройств или систем и выполнение любых включенных в него способов. Объем изобретения определяется формулой изобретения и может включать в себя другие примеры, которые очевидны для специалистов в данной области техники. Такие другие примеры предполагаются охваченными формулой изобретения, если они имеют структурные элементы, которые не отличаются от точного языка формулы изобретения, или если они включают эквивалентные структурные элементы с несущественными отличиями от точного языка формулы изобретения.