3D 정렬 및 검사 라이브러리 - Easy3DMatch
2021.11Hit. 988
|
|
---|---|
![]() 3D 검사의 필요성 ![]() 2D 비전과 3D 비전의 가장 큰 차이점은 높이 측정의 가능 유무입니다. 평면 데이터(X, Y축)만 취득 가능한 2D 비전에 비해 3D 비전은 제품의 형상과 좌표 정보((X, Y, Z축)를 제공함으로써 품질 검사를 한 단계 업그레이드할 수 있습니다. 획득된 Z값을 통해서는 높이, 두께, 부피뿐 아니라 검사 물체의 이물, 결함 크기까지 구할 수 있습니다. 기존 2D 카메라를 이용한 커넥터 핀 유무 검사에 3D 카메라의 높이 정보를 추가하여 높이 성형 불량까지 2.5D 방식의 검사 항목이 확대되고, 투명한 디스플레이 상부에 도포된 레진의 폭, 두께 및 높이의 검사까지도 가능해진 것입니다. 인력을 대체하기 위한 검사 시스템에서 사람이 검사할 수 없는 높이, 형상, 표면 등의 항목으로 활용도가 점차 확대되면서 3D 검사의 필요성이 요구되고 있습니다.
이중에서 특히 Easy3DMatch 라이브러리는 검사 어플리케이션에서 가장 유용하게 사용되는데, 스캔한 대상물의 3D 데이터를 다른 스캔 또는 기준이 되는 레퍼런스 메쉬 데이터와 정렬하는 기능을 수행합니다. 이 모델은 레퍼런스로 포인트 클라우드 또는 CAD 소프트웨어로 생성된 3D 메쉬로 지정할 수 있습니다. Easy3DMatch는 레퍼런스 모델과 정렬한 후 구멍, 범프, 흠집, 간격과 같은 부분적 차이를 검색할 수 있는데 감지된 이상 항목이 개별 위치, 거리, 면적과 함께 반환됩니다. 그리고 대화형 3D Viewer를 통해 거리와 컬러 데이터가 있는 새로운 포인트 클라우드를 만들고 표시할 수 있습니다. 주요 Class 각각의 라이브러리가 주요하게 다루는 Class는 다음과 같습니다.
EDepthMap
EPointCloud
EMesh
EZMap ![]() 기본적으로 다루는 Class에 관해서 다음과 같은 Class를 사용하여 변환이 가능합니다. ![]()
E3DObject ![]() ![]() E3DObject는 다음과 같은 특징을 저장합니다. ![]() ![]() 데이터 포맷 Easy3D는 다음과 같은 포맷으로 3D 데이터를 저장 및 로드가 가능합니다. EDepthMap – bmp, jpg, png, tiff EZMap – bmp, jpg, png, tiff EPointCloud – csv, obj, pcd, ply, xyz EMesh – stl 쉬운 인터페이스 사용이 쉽기에 주요 기능을 짧은 코드로 구현할 수 있고, 개발의 생산성을 높일 수 있습니다. 아래는 E3DViewer를 만들고 Point Cloud를 Load하여 시각화하는 C# 코드입니다. ![]() ![]() 아래는 Point Cloud와 Z Map간에 변환을 하는 C# 코드입니다. ![]() 커스텀이 가능한 E3DObject 추출 추출하고자 하는 E3DObject에 대한 설정이 가능합니다. 아래는 추출할 E3DObject의 특징 값을 설정하는 C# 코드입니다. ![]() 적용 예시 Easy3D의 적용 사례입니다. 기존 3D Sensor와 연동한 프로그램의 UI는 다음과 같습니다. 기존에는 3D Sensor에서 받은 데이터를 가공하여 만든 2D Surface 이미지를 Viewer에서 보여줍니다. ![]() 이 프로그램에 Easy3D를 적용할 경우, 다음과 같이 3D Sensor에서 받은 데이터를 별도의 가공없이 변환을 통해 Viewer에서 볼 수 있습니다. ![]() |
|
이전글 | |
다음글 | 비전 검사에 활용되는 빛의 특성 (시리즈 #2) |