KR102648104B1 - 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램 - Google Patents

차량 단차 측정 방법, 장치 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102648104B1
KR102648104B1 KR1020230122561A KR20230122561A KR102648104B1 KR 102648104 B1 KR102648104 B1 KR 102648104B1 KR 1020230122561 A KR1020230122561 A KR 1020230122561A KR 20230122561 A KR20230122561 A KR 20230122561A KR 102648104 B1 KR102648104 B1 KR 102648104B1
Authority
KR
South Korea
Prior art keywords
coordinate system
area
point cloud
unit
redefined
Prior art date
Application number
KR1020230122561A
Other languages
English (en)
Inventor
고대관
구자춘
윤진
Original Assignee
주식회사 스누아이랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 스누아이랩 filed Critical 주식회사 스누아이랩
Priority to KR1020230122561A priority Critical patent/KR102648104B1/ko
Application granted granted Critical
Publication of KR102648104B1 publication Critical patent/KR102648104B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/14Measuring arrangements characterised by the use of optical techniques for measuring distance or clearance between spaced objects or spaced apertures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • G01B11/03Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness by measuring coordinates of points
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • G01B11/06Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness for measuring thickness ; e.g. of sheet material
    • G01B11/0608Height gauges
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B21/00Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
    • G01B21/02Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness
    • G01B21/04Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness by measuring coordinates of points
    • G01B21/045Correction of measurements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20172Image enhancement details
    • G06T2207/20182Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

본 출원의 일 실시예에 따른 단차 측정 방법은, 복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득하는 단계; 상기 표면 영상에서 상기 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 상기 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 단계; 상기 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하는 단계; 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 상기 정의된 좌표계를 재정의하는 단계; 재정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하여 일 평면에 프로젝션 하는 단계; 상기 일 평면에 프로젝션된 데이터를 이용하여 상기 차량의 단차를 측정하는 단계;를 포함하는 것을 일 특징으로 한다. 본 발명의 일 실시 예에 따르면, 측정 센서와 차량 사이의 거리가 먼 환경에서 촬영된 이미지를 기반으로 단차를 정확하게 측정할 수 있다.

Description

차량 단차 측정 방법, 장치 및 컴퓨터 프로그램{METHOD, APPARATUS AND COMPUTER PROGRAM FOR MEASURING GAP AND FLUSH}
본 출원은 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램에 관한 것으로, 구체적으로 본 출원은 획득한 영상을 기반으로 차량 패널 사이의 간격 차이(gap) 및 높이 차이(flush)를 측정하는 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램에 관한 것이다.
차량을 구성하는 패널 간 단차는 제품의 완성도를 판단하는 기준이 된다. 따라서 완성도 높은 제품을 생산하기 위해 생산 공정에서 단차를 측정하는 작업이 이루어지는데, 전통적으로 사람이 직접 차량 틈에 측정 도구를 접촉시키거나 삽입하는 방식이 사용되었으나, 이는 측정하는 사람의 숙련도에 영향을 받으며, 무인화 공정을 지연시키는 문제가 존재했다.
이에, 무인화를 위한 한 가지 방법으로 비접촉식 광학 도구인 단차 측정 센서와 로봇을 이용하는 방식이 제안되었다. 단차 측정을 위해서는 차량 표면을 측정하는 센서가 필요한데, 기존 단차 측정 솔루션에 사용되는 센서들은 측정하고자 하는 대상(차량)에서 약 10cm 내외 떨어진 가까운 거리에서 측정을 진행한다. 단차 측정 센서는 일반적으로 2차원(깊이와 폭)을 측정하므로, 측정 면과 센서가 평행하게 세팅된 환경을 필요로 한다. 그러나 실제 산업 환경에서는 측정 대상을 센서와 완전히 평행하게 위치시키는 것이 쉽지 않다. 측정 대상이 컨베이어 벨트 위에 놓여 이동하게 되는 경우 평행한 상태를 유지할 수 없으므로, 평행한 상태를 구현하기 위해 로봇이 이용된다.
그러나 움직이는 컨베이어 벨트 위에 위치한 차량의 단차 측정에 로봇을 사용하기 위해서는 로봇의 구동 범위와 크기를 고려한 공간 확보가 요구되며, 로봇 시스템을 도입하려면 안전 규정으로 인해 대규모의 안전설비 - 안전망, 안전매트, 인디케이터 등 - 이 필요해 여유있는 공간이 확보된 사업장에서만 도입 가능하다. 이에 제한된 공간 내에서 움직이는 제품의 단차를 측정할 수 있는 기술의 개발이 요구된다.
본 발명이 해결하고자 하는 일 과제는, 측정 센서와 차량 사이의 거리가 먼 환경에서 촬영된 이미지를 기반으로 단차를 정확하게 측정할 수 있는 단차 측정 방법, 장치 및 시스템을 제공하는 것이다.
또한 본 발명이 해결하고자 하는 일 과제는 고정된 측정 장치를 이용하여 컨베이어 벨트 위에서 움직이는 차량의 단차를 측정할 수 있는 방법을 제공하는 것이다.
또한 본 발명이 해결하고자 하는 일 과제는 최소한의 오차범위를 갖는 단차 측정 방법, 장치 및 시스템을 제공하는 것이다.
본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 단차 측정 방법은, 복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득하는 단계; 상기 표면 영상에서 상기 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 상기 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 단계; 상기 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하는 단계; 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 상기 정의된 좌표계를 재정의하는 단계; 재정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하여 일 평면에 프로젝션 하는 단계; 상기 일 평면에 프로젝션된 데이터를 이용하여 상기 차량의 단차를 측정하는 단계;를 포함할 수 있다.
본 발명의 일 실시 예에 따른 단차 측정 장치는, 복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득하는 영상 수집부; 상기 표면 영상을 이용하여 상기 차량의 단차를 측정하는 프로세서;를 포함하며, 상기 프로세서는, 상기 표면 영상에서 상기 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 상기 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 영상 처리부; 상기 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하며, 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 상기 정의된 좌표계를 재정의하는 표면 좌표계 추정부; 재정의된 좌표계를 기준으로 상기 제1 영역에 대응되는 포인트 클라우드를 일 평면에 프로젝션 하고, 상기 일 평면에 프로젝션된 데이터를 이용하여 상기 차량의 단차를 측정하는 단차 계산부;를 포함할 수 있다.
본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시 예에 따르면, 측정 센서와 차량 사이의 거리가 먼 환경에서 촬영된 이미지를 기반으로 단차를 정확하게 측정할 수 있다.
또한 본 발명의 일 실시 예에 따르면, 고정된 측정 장치로도 컨베이어 벨트 위에서 움직이는 차량의 단차를 측정할 수 있다.
또한 본 발명의 일 실시 예에 따르면, 단차 측정의 오차를 최소화할 수 있다.
도 1은 본 출원의 일 실시예에 따른 단차 측정 장치의 블록도이다.
도 2는 본 출원의 일 실시예에 따른 단차 측정 방법을 나타낸 순서도이다.
도 3은 본 출원의 일 실시예에 따른 전처리 단계를 구체화한 순서도이다.
도 4는 본 출원의 일 실시예에 따른 전처리 단계 결과물의 일 예를 도시한 도면이다.
도 5는 본 출원의 일 실시예에 따른 전처리 대상이 되는 영역을 설명하기 위한 도면이다.
도 6은 본 출원의 일 실시예에 따른 좌표계 재정의 단계를 구체화한 순서도이다.
도 7은 본 출원의 일 실시예에 따른 제1 보정 단계를 구체화한 순서도이다.
도 8은 본 출원의 일 실시예에 따른 제2 보정 단계를 구체화한 순서도이다.
도 9는 본 출원의 일 실시예에 따른 단차 측정 단계를 구체화한 순서도이다.
도 10은 본 출원의 일 실시예에 따른 단위 벡터의 정의를 설명하기 위한 도면이다.
도 11은 본 출원의 일 실시예에 따른 단차 측정 방법을 설명하기 위한 도면이다.
도 12는 본 출원의 일 실시 예에 따른 단차 측정 시스템을 설명하기 위한 도면이다.

본 출원의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 출원은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.
명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명하며, 이에 대한 중복되는 설명은 생략하기로 한다.
본 출원과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 출원의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 이하의 실시예에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
이하의 실시예에서, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하의 실시예에서, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다.
도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타낸 것으로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
어떤 실시예가 달리 구현 가능한 경우에 특정한 프로세스의 순서는 설명되는 순서와 다르게 수행될 수도 있다. 예를 들어, 연속하여 설명되는 두 프로세스가 실질적으로 동시에 수행될 수도 있고, 설명되는 순서와 반대의 순서로 진행될 수 있다.
이하의 실시예에서, 구성 요소 등이 연결되었다고 할 때, 구성 요소들이 직접적으로 연결된 경우뿐만 아니라 구성요소들 중간에 구성 요소들이 개재되어 간접적으로 연결된 경우도 포함한다.
예컨대, 본 명세서에서 구성 요소 등이 전기적으로 연결되었다고 할 때, 구성 요소 등이 직접 전기적으로 연결된 경우뿐만 아니라, 그 중간에 구성 요소 등이 개재되어 간접적으로 전기적 연결된 경우도 포함한다.
한편, 본 명세서에서 ‘단차’는 차량 패널 사이의 간격 차이(gap) 및 높이 차이(flush)를 모두 포함하는 개념으로 이해될 수 있으며, 구분이 필요한 경우에는 간격 차이(gap)와 높이 차이(flush)로 기재하였다.
이하에서는 도 1 내지 도 11을 참고하여 본 출원의 단차 측정 방법, 장치 및 시스템에 관하여 설명한다.
도 1은 본 출원의 일 실시예에 따른 단차 측정 장치(100)의 블록도이다. 단차 측정 장치(100)는 복수의 패널 간 단차(간격 차이(gap)와 높이 차이(flush)를 측정하기 위한 장치로, 복수의 패널 및 단차 영역을 포함하는 차량 표면의 3차원 영상을 획득한 뒤, 이를 분석하여 단차를 측정할 수 있는 장치이다.
본 출원의 일 실시 예에 따른 단차 측정 장치(100)는 영상 수집부(110), 프로세서(130)를 포함할 수 있으며, 데이터를 저장하기 위한 저장부(150), 측정 결과를 서버 등으로 전송하기 위한 통신부(170)를 더 포함할 수 있다.
영상 수집부(110)는 복수의 패널의 경계 영역을 포함하는 차량의 표면 영상을 획득할 수 있다. 영상 수집부(110)는 3D 카메라, 3D 비전 센서로 명명되는 영상 획득 장치로, 예를 들어 3D 구조광(structure light) 카메라, ToF(Time-of-Flight) 카메라, 스테레오 비전(Stereo Vision) 카메라와 같이 깊이 정보를 포함하는 3차원 영상을 획득하는 장치를 포괄하는 의미일 수 있다. 본 발명의 영상 수집부(110)는 포인트 클라우드 - 3차원 공간에 속한 데이터 점들의 집합 - 를 획득할 수 있는 3차원 측정 장치라면, 영상 획득 방식이나 생성 방석에 의해 제한되지 않는다.
프로세서(130)는 영상 수집부(110)에서 획득한 표면 영상을 이용하여 단차를 측정한다. 보다 구체적으로 프로세서(130)는 영상 처리부(131), 전처리부(133), 표면 좌표계 추정부(135), 단차 계산부(137)를 포함할 수 있다. 프로세서(130)는 저장부(150)으로부터 단차 측정 장치(100)의 전반적인 동작을 위한 프로그램을 로딩하여 실행할 수 있다. 프로세서(130)는 하드웨어나 소프트웨어 또는 이들의 조합에 따라 AP(Application Processor), CPU(Central Processing Unit), MCU(Microcontroller Unit)나 이와 유사한 장치로 구현될 수 있다. 이때, 하드웨어적으로는 전기적 신호를 처리하여 제어 기능을 수행하는 전자 회로 형태로 제공될 수 있으며, 소프트웨어적으로는 하드웨어적 회로를 구동시키는 프로그램이나 코드 형태로 제공될 수 있다.
영상 처리부(131)는 표면 영상에서 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 복수의 기준점을 모두 포함하는 제1 영역을 크롭할 수 있다. 이 때, 제1 영역은 도 4에 도시된 붉은색 사각 박스(R100)와 같이 사각형 형태일 수 있으나, 제1 영역의 형태는 꼭 본 실시 예에 한정되는 것은 아니다. 복수의 기준점은 기준점을 검출하는 기계학습 프레임워크 또는 사용자 설정에 의해 설정될 수 있으며, 복수의 기준점은 경계 영역을 기준으로 대향하는 위치에 존재하는 두 개 이상의 점이면 충분하며, 경계 영역을 중심으로 정확한 대칭을 이루어야 하는 것은 아니다. 다만, 기준점을 검출하는 기계학습 프레임워크는 단차에 대응되는 경계 영역을 중심으로 대칭을 이루는 두 개의 점을 검출할 수 있도록 학습되거나, 경계 영역에 수직한 직선 상의 두 점을 검출할 수 있도록 학습된 프레임워크일 수 있다. 즉, 경계 영역에 수직한 직선 상의 두 점 및/또는 경계 영역을 중심으로 대칭을 이루는 두 개의 점을 포함하는 이미지로 학습된 프레임워크일 수 있다
전처리부(133)는 크롭된 제1 영역에서 노이즈를 제거할 수 있다. 이하에서는 도 4를 참조하여 전처리부(133)의 노이즈 제거 방법을 설명한다. 먼저 전처리부(133)는 영상 처리부(131)에서 크롭한 제1 영역을 R310과 같이 가우시안 블러 처리할 수 있다. 다음으로, 전처리부(133)는 윤곽 영역을 검출할 수 있는데, 예를 들어 전처리부(133)는 R330과 같이 Canny Edge 알고리즘과 같은 윤곽선 검출 알고리즘을 이용하여 윤곽선을 검출할 수 있다. 다음으로, R350과 같이 윤곽선이 검출된 이미지에 팽창(dilation) 필터를 적용하여 윤곽선을 윤곽 영역으로 설정할 수 있다. 이 경우 본 발명은 윤곽선 검출이나, 윤곽 영역 설정 과정에서 사용되는 알고리즘 및 필터는 상술한 예시에 의해 한정되지 않으며, 유사한 효과를 도출할 수 있는 다른 방식도 얼마든지 활용될 수 있다.
전처리부(133)는 윤곽 영역 검출 후, 연결요소화 및 라벨링(connected Components & labeling)을 이용하여 영역을 구분할 수 있으며, 그 결과 R370과 같은 이미지를 획득할 수 있다. 다음으로 전처리부(133)는 제1 영역에서 복수의 기준점을 각각 포함하는 복수의 제2 영역과 윤곽 영역을 제외한 제3 영역의 포인트 클라우드를 제거할 수 있다. 일 예로, 도 5를 추가적으로 참조하면, 전처리부(133)의 처리에 의해 도 5와 같이 제1 영역의 요소화된 이미지가 생성되는 경우 기준점(A)를 포함하는 제2 영역(a)과 기준점(B)을 포함하는 제2 영역(b) 요소화된 이미지에서 유지될 수 있다. 또한 윤곽 영역 역시 유지될 수 있다. 전처리부(133)는 제3 영역에 대응되는 포인트 클라우드를 제거할 수 있으며, 그 결과는 R390과 같이 도출될 수 있다. 즉, 제3 영역은 제1 영역에서 제2 영역과 윤곽 영역을 제외한 나머지 부분인데, 이는 경계 영역과 유사한 위치 및 형태를 가지나 경계 영역과는 차이가 있으므로 구별된다. 전처리부(133)가 제3 영역에 대응되는 포인트 클라우드를 제거하는 이유는 제3 영역에 대응되는 포인트 클라우드는 자동차 단차 측정 시 경계에 존재하는 이상 현상에 의한 데이터일 가능성이 높기 때문이다. 3D 카메라 장치가 수집하는 포인트 클라우드 또는 깊이 이미지 결과에는 노이즈(noise)와 아티팩트(artifacts)가 포함되는 경향이 있는데, 여기서 노이즈는 카메라 센서 또는 장비에 의한 전기적인 장애 신호를, 아티팩트는 프로젝션 및 이미징 시스템의 광학 현상과 깊이 데이터의 디코딩으로 인해 캡처된 이상 현상을 의미하는 것으로 이해될 수 있다. 본 발명의 전처리부(133)가 제거하려는 대상은 아티팩트로, 이는 표면 간의 상호 반사와 표면의 대비 불연속성의 왜곡에 의해 발생되는 것일 수 있다. 즉, 본 발명의 전처리부(133)는 제3 영역에 대응되는 포인트 클라우드를 제거함으로써, 검은색에서 흰색으로 전환되는 지점과 같이 흡수율이 높은 표면에서 반사 표면으로 급격한 변화가 있는 영역에서의 단차 측정 오류를 줄일 수 있다.
다시 도 1을 참조하면, 표면 좌표계 추정부(135)는 제1 영역에서 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의할 수 있다. 만약 전처리부(133)에서 제1 영역의 노이즈를 제거하여 전달하는 경우, 표면 좌표계 추정부(135)는 노이즈가 제거된 제1 영역에서 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의할 수 있다. 표면 좌표계 추정부(135)는 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 정의된 좌표계를 재정의할 수 있다.
일 예로, 도 10을 참조하여 설명하면, 표면 좌표계 추정부(135)는 기준점(A)에 대응되는 제1 포인트 클라우드와 기준점(B)에 대응되는 제2 포인트 클라우드의 데이터를 추출하고, 두 포인트 클라우드를 이용하여 좌표계를 정의할 수 있다. 우선, 표면 좌표계 추정부(135)는 제1, 2 포인트 클라우드에 의해 생성되는 벡터를 기준 오리엔트 벡터(base orient vector)로 정의하고, 각각의 포인트 클라우드로부터 노멀 단위 벡터(normal unit vector)를 계산할 수 있다. 다음으로 표면 좌표계 추정부(135)는 노멀 단위 벡터들 가운데 사용자가 특정한 한 점(도 10의 예에서 기준점 (B))의 노멀 단위 벡터를 기준 노멀 단위 벡터(base normal unit vector)로 정의할 수 있다. 그리고, 상술한 기준 오리엔트 벡터와 기준 노멀 단위 벡터에 직교하는 단위 벡터를 어프로치 단위 벡터(approach unit vector)로 정의할 수 있다. 표면 좌표계 추정부(135)는 좌표계를 한 차원 높여서 표기하기 위해- 동차 좌표계(Homogeneous coordinate)가 되도록 하기 위해 - 노멀 단위 벡터와 어프로치 단위 벡터를 이용하여 오리엔트 단위 벡터를 재계산할 수 있다. 보다 구체적으로, 동차 좌표계는 각 벡터들이 직교하는 특성을 지니므로, 노멀 단위 벡터와 어프로치 단위 벡터의 벡터곱을 오리엔트 벡터의 크기(스칼라 값)으로 나누어 오리엔트 단위 벡터를 재계산 한다. 표면 좌표계 추정부(135)는 이렇게 재계산된 오리엔트 단위 벡터, 노멀 단위 벡터, 어프로치 단위 벡터를 이용하여 좌표계를 정의할 수 있다.
좌표계 정의 이후 차량 표면과 평행한 좌표계를 추정하기 위하여 표면 좌표계 추정부(135)는 좌표계를 재정의하는 작업을 수행할 수 있다. 좌표계 재정의는 다음과 같이 수행될 수 있다.
표면 좌표계 추정부(135)는 정의된 좌표계를 기준으로 일 영역(일정 범위) 내의 포인트 클라우드(제3 포인트 클라우드)만을 마스킹하여 추출할 수 있다. 여기서 일 영역은 사용자 설정에 따라 달라질 수 있으며, 영역의 크기는 이후 노멀 벡터의 평균 값 산출 및 이를 이용한 좌표계 보정에 영향을 미친다. 즉, 영역의 크기를 크게 설정하면, 좀 더 큰 영역의 평균적인 결과를 얻어낼 수 있고, 크기를 작게 설정하면 해당 위치의 국소적인 결과를 얻어낼 수 있다.
한편, 표면 좌표계 추정부(135)는 제3 포인트 클라우드를 이용하여 좌표계의 단위 벡터를 보정할 수 있다(제1 보정). 제1 보정을 보다 구체적으로 설명하면, 표면 좌표계 추정부(135)는 제3 포인트 클라우드에 대응되는 노멀 벡터를 추출하여 벡터들의 평균을 산출할 수 있다. 표면 좌표계 추정부(135)는 산출된 평균 노멀 벡터를 정의된 좌표계의 노멀 벡터로 정의하고, 이를 기초로 어프로치 단위 벡터를 재계산 할 수 있다. 다음으로 다시 기존 좌표계를 동차 좌표계로 표기하기 위해 평균 노멀 벡터와 재계산된 어프로치 단위 벡터를 이용하여 오리엔트 단위 벡터를 재계산할 수 있다. 그리고 재계산된 오리엔트 단위 벡터와 단위 평균 노멀 벡터를 이용하여 재계산된 어프로치 단위 벡터를 다시 보정한다. 표면 좌표계 추정부(135)는 이러한 작업을 통해 좌표계를 재정의할 수 있다(1차 재정의).
좌표계를 재정의한 후 표면 좌표계 추정부(135)는 재정의된 좌표계를 기준으로 일 영역의 포인트 클라우드(제4 포인트 클라우드)를 추출하는 작업을 다시 수행한다. 표면 좌표계 추정부(135)는 제4 포인트 클라우드를 이용하여 1차 재정의된 좌표계의 단위 벡터를 보정하고(제2 보정), 이를 이용하여 1차로 재정의된 좌표계를 다시 재정의하는 2차 재정의를 수행할 수 있다.
제2 보정을 보다 구체적으로 설명하면, 표면 좌표계 추정부(135)는 제4 포인트 클라우드를 1차 재정의된 좌표계의 오리엔트-어프로치 평면에 프로젝션하고, 프로젝션 된 데이터를 클러스터링 할 수 있다. 그 결과 복수의 클러스터가 생성될 수 있는데, 표면 좌표계 추정부(135)는 SVM(Support Vector Machine) 등을 이용하여 생성된 복수의 클러스터 간 틀어진 각도를 계산할 수 있다. 다음으로 표면 좌표계 추정부(135)는 노멀 벡터의 축을 기준으로 두 클러스터 간 틀어진 각도의 반대 방향으로 오리엔트 단위 벡터와 어프로치 단위 벡터를 회전시킬 수 있다. 다음으로 표면 좌표계 추정부(135)는 회전된 오리엔트 단위 벡터, 어프로치 단위 벡터, 노멀 단위 벡터를 이용하여 좌표계를 재정의할 수 있다(2차 재정의). 이후 표면 좌표계 추정부(135)는 최종적으로 재정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하여 단차 계산부(137)에 전달할 수 있다.
단차 계산부(137)는 재정의된 좌표계를 기준으로 추출된 일 영역의 포인트 클라우드를 일 평면에 프로젝션 하고, 일 평면에 프로젝션된 데이터를 이용하여 차량의 단차를 측정할 수 있다. 여기서 포인트 클라우드가 프로젝션되는 평면은 최종적으로 재정의된 좌표계의 프로치-노멀 평면일 수 있으며, 평면에 프로젝션되는 일 영역은 사각 박스 형태의 일 영역일 수 있다.
단차 계산부(137)는 프로젝션된 데이터를 복수의 클러스터로 분리하고, 복수의 클러스터에 SVM(Support Vector Machine)을 적용하여 서포트 벡터(Support Vector)를 계산할 수 있다. 그리고 서포트 벡터를 이용해 복수의 클러스터 간 거리를 계산할 수 있다. 단차 계산부(137)는 이렇게 산출된 클러스터 간 거리를 간격차이(gap)로 정의할 수 있다.
나아가 단차 계산부(137)는 복수의 클러스터 중 한 클러스터에 대응되는 직선을 생성할 수 있는데, 이 직선과 타 클러스터의 데이터 간 거리를 이용하여 높이 차이(flush)를 산출할 수 있다. 보다 구체적으로, 단차 계산부(137)는 한 클러스터에 피팅된 직선과 타 클러스터의 데이터들 간의 거리를 모두 계산한 뒤, 이의 평균값을 구하는 방식으로 높이 차이(flush)를 산출 할 수 있다.*
도 11의 예시를 참조하면, 단차 계산부(137)는 클러스터 1에 피팅되는 직선을 생성할 수 있는데, 이 때 이 직선이 차량 표면과 평행한 기준 표면인 것으로 이해될 수 있다. 단차 계산부(137)는 클러스터 1에 대응되는 직선과 클러스터 2을 구성하는 데이터들 간의 거리의 평균 값을 구하여, 이를 높이 차이로 판단할 수 있다.
단차 측정 장치(100)의 저장부(150)는 각종 정보를 저장할 수 있다. 저장부(150)에는 각종 데이터가 임시적으로 또는 반영구적으로 저장될 수 있다. 저장부(150)의 예로는 하드 디스크(HDD: Hard Disk Drive), SSD(Solid State Drive), 플래쉬 메모리(flash memory), 롬(ROM: Read-Only Memory), 램(RAM: Random Access Memory) 등이 있을 수 있다. 저장부(150)는 단차 측정 장치(100)에 내장되는 형태나 탈부착 가능한 형태로 제공될 수 있다. 저장부(150)에는 단차 측정 장치(100)를 구동하기 위한 운용 프로그램(OS: Operating System)이나 단차 측정 장치(100)의 각 구성을 동작시키기 위한 프로그램을 비롯해 단차 측정 장치(100)의 동작에 필요한 각종 데이터가 저장될 수 있다.
단차 측정 장치(100)의 통신부(170)는 서버를 포함한 임의의 외부 기기와 통신을 수행할 수 있다. 또한 예컨대, 영상 수집부(110)가 단차 측정 장치(100)와 별도로 구성되는 경우, (즉, 단차 측정 장치(100)의 구성요소가 프로세서(130), 저장부(150), 통신부(170)로 구성되는 경우)에는 영상 수집부(110)로부터 경계 영역을 포함하는 차량의 표면 영상을 수신할 수 있다. 다른 실시 예로, 프로세서(130)의 단차 측정 기능 일부가 별도 단말에서 이루어지는 경우에는 영상 수집부(110)에서 수집된 차량의 표면 영상을 프로세서(130) 기능을 수행하는 외부 기기로 전송할 수 있다.
이 외에도, 단차 측정 장치(100)는 통신부(170)를 통해 네트워크에 접속하여 각종 데이터를 송수신할 수 있다. 송수신부는 크게 유선 타입과 무선 타입을 포함할 수 있다. 유선 타입과 무선 타입은 각각의 장단점을 가지므로, 경우에 따라서 단차 측정 장치(100)에는 유선 타입과 무선 타입이 동시에 마련될 수도 있다. 여기서, 무선 타입의 경우에는 주로 와이파이(Wi-Fi) 같은 WLAN(Wireless Local Area Network) 계열의 통신 방식을 이용할 수 있다. 또는, 무선 타입의 경우에는 셀룰러 통신, 예컨대, LTE, 5G 계열의 통신 방식을 이용할 수 있다. 다만, 무선 통신 프로토콜이 상술한 예시에 제한되는 것은 아니며, 임의의 적절한 무선 타입의 통신 방식을 이용하는 것도 가능하다. 유선 타입의 경우에는 LAN(Local Area Network)이나 USB(Universal Serial Bus) 통신이 대표적인 예이며 그 외의 다른 방식도 가능하다.
이하에서는 도 2 내지 도 9를 참조하여, 본 출원의 일 실시 예에 따른 단차 측정 방법을 설명한다.
도 2는 본 출원의 일 실시예에 따른 단차 측정 방법을 나타낸 순서도이다. 도 2를 참조하면, 장치는 복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득할 수 있다(S100). 단계 S100의 수행 주체는 3차원 영상 획득 장치로, 이는 이후의 단계200 내지 단계700에서 단차 측정을 수행하는 수행 주체인 프로세서와는 동일한 하드웨어(단차 측정 장치) 내에서 수행될 수도 있고, 분리된 별도의 하드웨어 일 수도 있다.
단차 측정 장치는 다음으로 표면 영상에서 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 복수의 기준점을 모두 포함하는 제1 영역을 크롭할 수 있다(S200). 여기서 제1 영역을 사각형 형태로 크롭될 수 있다. 다음으로 장치는 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의할 수 있다(S400). 단계 S400 전에 장치는 선택적으로 제1 영역을 전처리할 수 있다(S300). 장치는 좌표계 정의 후, 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 상기 정의된 좌표계를 재정의할 수 있다(S500). 다음으로 장치는 재정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하여 일 평면에 프로젝션 할 수 있다(S600). 마지막으로 장치는 일 평면에 프로젝션된 데이터를 이용하여 차량의 단차를 측정함으로써 단차 측정의 최종 결과물을 획득할 수 있다(S700).
이하에서는 도 3 내지 도 9를 참조하여, 각 단계의 구체적인 실시 예를 살펴본다.
도 3을 참조하여, 제1 영역의 전처리 단계(S300)를 보다 구체적으로 살펴본다. 장치는 제1 영역을 이미지 필터링 할 수 있다(S310). 단계 S310 에서의 이미지 필터링은 윤곽선 도출에 불필요한 고주파수 성분을 필터링하는 것으로, 일 예로 가우시안 블러와 같은 필터가 사용될 수 있다. 그리고 제1 영역에서 윤곽 영역을 검출할 수 있는데, 구체적으로 이 단계는 제1 영역에서 윤곽선을 검출하고(S330), 팽창(dilation) 필터를 적용하여 팽창된 윤곽선을 윤곽 영역으로 설정하는(S350) 과정을 통해 이루어질 수 있다. 다음으로 장치는 연결요소화 및 라벨링을 이용하여 영역을 구분한 뒤(S370), 복수의 기준점을 각각 포함하는 복수의 제2 영역과 윤곽 영역을 제외한, 제3 영역에 대응되는 포인트 클라우드를 제거함으로써 경계 노이즈를 제거할 수 있다(S390). 각 단계별 결과물은 도 4에 도시된 바와 같으며, R310은 S310, R330은 S330, R350은 S350, R370은 S370, R390은 S390의 결과의 일 실시 예이다.
다음으로 도 10을 참조하여 좌표계, 즉 단차 측정을 위한 표면 좌표계를 정의하는 단계(S400)의 일 예를 구체적으로 설명한다. 장치는 도 10에 도시된 바와 같이 기준점(A)에 대응되는 제1 포인트 클라우드와 기준점(B)에 대응되는 제2 포인트 클라우드의 데이터를 추출하고, 두 포인트 클라우드를 이용하여 좌표계를 정의할 수 있다. 장치는 제1, 2 포인트 클라우드에 의해 생성되는 벡터를 기준 오리엔트 벡터로 정의하고, 각각의 포인트 클라우드로부터 노멀 단위 벡터를 계산할 수 있다. 그리고 노멀 단위 벡터들 가운데 사용자가 특정한 한 점(도 10의 예에서 기준점 (B))의 노멀 단위 벡터를 기준 노멀 단위 벡터로 정의할 수 있다. 그리고 기준 오리엔트 벡터와 기준 노멀 단위 벡터에 직교하는 단위 벡터를 어프로치 단위 벡터로 정의한 뒤, 동차 좌표계 특성을 맞추기 위해 노멀 단위 벡터와 어프로치 단위 벡터를 이용하여 오리엔트 단위 벡터를 재계산할 수 있다. 그리고 이렇게 재계산된 오리엔트 단위 벡터, 노멀 단위 벡터, 어프로치 단위 벡터를 이용하여 좌표계를 정의할 수 있다.
단계 S400 이후, 장치는 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 정의된 좌표계를 재정의할 수 있다(S500).
도 6을 참조하여, 좌표계 재정의 단계를 보다 구체적으로 살펴보면 다음과 같다. 단계 S500에서, 장치는 상기 좌표계를 기준으로 일 영역의 제3 포인트 클라우드를 추출하고(S510). 제3 포인트 클라우드를 이용하여 좌표계의 단위 벡터를 보정할 수 있다(S520). 다음으로 장치는 단계 S520에서 보정된 단위 벡터를 이용하여 좌표계를 재정의할 수 있다(S530). 장치는 1차 재정의된 좌표계를 기준으로 일 영역의 제4 포인트 클라우드를 추출하고(S540), 제4 포인트 클라우드를 이용하여 1차 재정의된 좌표계의 단위 벡터를 보정할 수 있다(S550). 그리고 장치는 단계 S550에서 보정된 단위 벡터를 이용하여 단계 S530에서 재정의된 좌표계를 다시 재정의할 수 있다(S560).
도 7을 참조하여 좌표계의 단위 벡터를 보정하는 1차 보정 단계(S520)를 보다 구체적으로 살펴본다. 단계 S520에서, 장치는 제3 포인트 클라우드에 대응되는 노멀 벡터를 추출하여 평균을 산출하고(S521), 산출된 평균 노멀 벡터를 상기 좌표계의 노멀 벡터로 정의함으로써, 이를 기초로 어프로치 단위 벡터를 재계산할 수 있다(S523). 장치는 평균 노멀 벡터와 재계산된 어프로치 단위 벡터를 이용하여 상기 오리엔트 단위 벡터를 재계산할 수 있으며(S525), 재계산된 오리엔트 단위 벡터와 상기 단위 평균 노멀 벡터를 이용하여 상기 재계산된 어프로치 단위 벡터를 보정할 수 있다(S527).
도 8을 참조하여, 제4 포인트 클라우드를 이용하여 1차 재정의된 좌표계의 단위 벡터를 보정하는 단계(S550)를 구체적으로 살펴본다.
단계 S550에서, 장치는 제4 포인트 클라우드를 1차 재정의된 좌표계의 오리엔트-어프로치 평면에 프로젝션 할 수 있으며(S551), 프로젝션된 데이터를 클러스터링 하여(S553), 복수의 클러스터 간 틀어진 각도를 계산할 수 있다(S555). 그리고 1차 재정의된 좌표계의 노멀 벡터의 축을 기준으로 상기 틀어진 각도의 반대 방향으로, 어프로치 단위 벡터 및 오리엔트 단위 벡터를 회전시킬 수 있다(S557).
도 9를 참조하여, 단차를 측정하는 단계(S700)를 보다 구체적으로 살펴본다.
장치는 프로젝션된 데이터를 클러스터링 할 수 있다(S710). 그리고 클러스터 사이의 거리를 계산하여 간격 차이(gap)를 산출할 수 있다(S730). 클러스터 중 일 클러스터에 대응되는 직선과 타 클러스터의 데이터 간 거리를 이용하여 높이 차이(flush)를 산출할 수 있다. 일 예로, 간격 차이는 분리된 두 클러스터의 서포트 벡터 계산 이후 서포트 벡터를 통해 계산 가능하며, 높이 차이는 도 11에 도시된 바와 같이 두 클러스터 중 한 클러스터에 직선을 피팅한 후 피팅된 직선과 다른 클러스트 데이터들 간의 거리를 계산한 뒤 이들의 평균값을 구하여 높이 차이로 결정할 수 있다.
다음으로, 도 12를 참조하여 본 발명의 일 실시 예에 따른 단차 측정 시스템을 설명한다. 본 발명의 일 실시 에에 따른 단차 측정 시스템(10)은 3D 카메라(500)와 서버(1000)를 포함할 수 있다.
3D 카메라(500)는 복수의 패널의 경계 영역을 포함하는 차량의 표면 영상을 획득하고, 표면 영상을 서버에 전송할 수 있으며, 서버(1000)는 표면 영상을 수신하여 차량의 단차를 측정할 수 있다. 서버(1000)는 표면 영상에서 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 영상 처리부(1310), 제1 영역에서 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하며, 정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 정의된 좌표계를 재정의하는 표면 좌표계 추정부(1350), 재정의된 좌표계를 기준으로 제1 영역에 대응되는 포인트 클라우드를 일 평면에 프로젝션 하고, 일 평면에 프로젝션된 데이터를 이용하여 차량의 단차를 측정하는 단차 계산부(1370)를 포함할 수 있다. 각 구성요소들은 도 1에서 상술한 단차 측정 장치(100)와 동일 또는 유사하게 동작하므로, 각 구성의 보다 구체적인 내용은 도 1 내지 5, 11에 관한 설명을 참조하여 유추할 수 있다.
본 발명의 일 실시 예에 따른 단차 측정 장치(100) 및 단차 측정 시스템(10)은 차량 표면을 측정하여 획득되는 포인트 클라우드와 텍스처 이미지를 이용하여 표면과 평행한 평면과 좌표계를 찾는 것을 일 목적으로 하며, 이 좌표계를 기반으로 단차를 측정하는 방법을 제공한다. 따라서 상술한 방법 및 장치의 동작을 통해 단차 측정 장치(100) 또는 서버(1000)는 측정도구 접촉이나, 표면과 평행한 측정면을 세팅하기 위한 로봇의 도입 없이도 영상만으로 높은 정확도로 단차를 측정할 수 있다.
본 발명의 일 실시 예에 따른 단차 측정 방법, 장치 및 컴퓨터 프로그램에 의하면, 근거리에서 측정 도구를 접촉시키거나 삽입하지 않고도 먼 거리에서 촬영된 이미지를 기반으로 단차를 정확하게 측정할 수 있다. 또한 높은 가격과 큰 설치 공간을 필요로 하는 로봇을 도입하지 않고도, 고정된 측정 장치를 이용하여 컨베이어 벨트 위에서 움직이는 차량의 단차를 측정할 수 있다. 본 발명에 따르면, 차량의 표면과 평행한 좌표계를 기준으로 단차를 측정할 수 있게 되는 바, 움직임에 따른 오차를 최소화할 수 있다는 장점이 있다.
이상에서 실시 형태들에 설명된 특징, 구조, 효과 등은 본 발명의 적어도 하나의 실시 형태에 포함되며, 반드시 하나의 실시 형태에만 한정되는 것은 아니다. 나아가, 각 실시 형태에서 예시된 특징, 구조, 효과 등은 실시 형태들이 속하는 분야의 통상의 지식을 가지는 자에 의해 다른 실시 형태들에 대해서도 조합 또는 변형되어 실시 가능하다. 따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
또한, 이상에서 실시 형태를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시 형태의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 즉, 실시 형태에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
10: 단차 측정 시스템
100: 단차 측정 장치 110: 영상 수집부
130: 프로세서 150: 저장부
170: 통신부
500: 3D 카메라 1000: 서버

Claims (16)

  1. 차량의 단차를 측정하는 방법에 있어서,
    복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득하는 단계;
    상기 표면 영상에서 상기 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 상기 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 단계;
    상기 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하는 단계;
    정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 구성하는 하나 이상의 단위 벡터를 보정하여 상기 정의된 좌표계를 재정의하는 단계;
    재정의된 좌표계를 기준으로 일 영역의 포인트 클라우드를 추출하여 일 평면에 프로젝션 하는 단계;
    상기 일 평면에 프로젝션된 데이터를 이용하여 상기 차량의 단차를 측정하는 단계를 포함하고,
    상기 좌표계를 재정의하는 단계는,
    상기 좌표계를 기준으로 일 영역의 제3 포인트 클라우드를 추출하는 단계;
    상기 제3 포인트 클라우드를 이용하여 상기 좌표계의 단위 벡터를 보정하는 제1 보정 단계;
    상기 제1 보정 단계에서 보정된 단위 벡터를 이용하여 상기 좌표계를 재정의하는 1차 재정의 단계;
    1차 재정의된 좌표계를 기준으로 일 영역의 제4 포인트 클라우드를 추출하는 단계;
    상기 제4 포인트 클라우드를 이용하여 상기 1차 재정의된 좌표계의 단위 벡터를 보정하는 제2 보정 단계;
    상기 제2 보정 단계에서 보정된 단위 벡터를 이용하여 상기 1차 재정의된 좌표계를 재정의하는 2차 재정의 단계;
    를 포함하는 는 단차 측정 방법.
  2. 제1 항에 있어서,
    상기 크롭된 제1 영역에서 노이즈를 제거하는 전처리 단계를 더 포함하고,
    상기 좌표계를 정의하는 단계는,
    상기 노이즈가 제거된 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하는 단계;
    를 포함하는 단차 측정 방법.


  3. 삭제
  4. 제1 항에 있어서,
    상기 차량의 단차를 측정하는 단계는,
    상기 프로젝션된 데이터를 클러스터링 하는 단계;
    클러스터 사이의 거리를 계산하여 간격 차이(gap)를 산출하는 단계;
    상기 클러스터 중 일 클러스터에 대응되는 직선과 타 클러스터의 데이터 간 거리를 이용하여 높이 차이(flush)를 산출하는 단계;
    를 포함하는 단차 측정 방법.
  5. 제2 항에 있어서,
    상기 제1 영역은 사각형 형태인 것을 특징으로 하는 단차 측정 방법.
  6. 제2 항에 있어서,
    상기 전처리 단계는;
    상기 제1 영역에서 윤곽 영역을 검출하는 단계;
    상기 제1 영역에서 상기 복수의 기준점을 각각 포함하는 복수의 제2 영역과 상기 윤곽 영역을 제외한 제3 영역에 대응되는 포인트 클라우드를 제거하는 단계;
    를 포함하는 단차 측정 방법.
  7. 제6 항에 있어서,
    상기 윤곽 영역 검출 전, 상기 제1 영역을 이미지 필터링하여 노이즈를 제거하는 단계를 더 포함하는 단차 측정 방법.
  8. 제6 항에 있어서,
    상기 윤곽 영역 검출 단계는,
    상기 제1 영역에서 윤곽선을 검출하고, 팽창(dilation) 필터를 적용하는 단계;
    상기 팽창된 윤곽선을 상기 윤곽 영역으로 설정하는 단계;
    를 포함하는 단차 측정 방법.
  9. 제1 항에 있어서,
    상기 프로젝션 단계는,
    상기 재정의된 좌표계를 기준으로 추출된 일 영역의 포인트 클라우드를 상기 재정의된 좌표계의 어프로치-노멀 평면에 프로젝션 하는 단계를 포함하는 단차 측정 방법.
  10. 제1 항에 있어서,
    상기 복수의 기준점은
    기준점을 검출하는 기계학습 프레임워크 또는 사용자 설정에 의해 설정되는 단차 측정 방법.
  11. 제1 항에 있어서,
    상기 제1 보정 단계는,
    상기 제3 포인트 클라우드에 대응되는 노멀 벡터를 추출하여 평균을 산출하는 단계;
    산출된 평균 노멀 벡터를 이용하여 어프로치 단위 벡터를 재계산 하는 단계;
    상기 평균 노멀 벡터를 이용한 단위 평균 노멀 벡터와, 재계산된 어프로치 단위 벡터를 이용하여 오리엔트 단위 벡터를 재계산하는 단계;
    상기 재계산된 오리엔트 단위 벡터와 상기 단위 평균 노멀 벡터를 이용하여 상기 재계산된 어프로치 단위 벡터를 보정하는 단계;
    를 포함하는 단차 측정 방법.
  12. 제1 항에 있어서,
    상기 제2 보정 단계는,
    상기 제4 포인트 클라우드를 상기 1차 재정의된 좌표계의 오리엔트-어프로치 평면에 프로젝션 하는 단계;
    프로젝션된 데이터를 클러스터링 하고, 복수의 클러스터 간 틀어진 각도를 계산하는 단계;
    상기 1차 재정의된 좌표계의 노멀 벡터의 축을 기준으로 상기 틀어진 각도의 반대 방향으로, 어프로치 단위 벡터 및 오리엔트 단위 벡터를 회전시키는 단계;
    를 포함하는 단차 측정 방법.
  13. 제1 항 내지 제12 항 중 어느 하나의 항에 따른 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  14. 차량의 단차를 측정하는 장치에 있어서,
    복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득하는 영상 수집부;
    상기 표면 영상을 이용하여 상기 차량의 단차를 측정하는 프로세서;를 포함하며,
    상기 프로세서는,
    상기 표면 영상에서 상기 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 상기 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 영상 처리부;
    상기 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하며, 상기 정의된 좌표계를 기준으로 일 영역의 제3 포인트 클라우드를 추출하고, 상기 제3 포인트 클라우드를 이용하여 상기 좌표계의 단위 벡터를 1차 보정하고, 상기 제1 보정에서 보정된 단위 벡터를 이용하여 상기 좌표계를 1차 재정의하고, 상기 1차 재정의된 좌표계를 기준으로 일 영역의 제4 포인트 클라우드를 추출하고, 상기 제4 포인트 클라우드를 이용하여 상기 1차 재정의된 좌표계의 단위 벡터를 2차 보정하고, 상기 제2 보정에서 보정된 단위 벡터를 이용하여 상기 1차 재정의된 좌표계를 2차 재정의하는 표면 좌표계 추정부;
    재정의된 좌표계를 기준으로 상기 제1 영역에 대응되는 포인트 클라우드를 일 평면에 프로젝션 하고, 상기 일 평면에 프로젝션된 데이터를 이용하여 상기 차량의 단차를 측정하는 단차 계산부;
    를 포함하는 단차 측정 장치.
  15. 제14항에 있어서,
    상기 크롭된 제1 영역에서 노이즈를 제거하는 전처리부를 더 포함하고,
    상기 제1 영역은,
    상기 전처리부에서 노이즈가 제거된 일 영역인 단차 측정 장치.
  16. 3D 카메라 및 서버를 포함하는 차량의 단차를 측정하는 시스템에 있어서,
    복수의 패널의 경계 영역을 포함하는 상기 차량의 표면 영상을 획득하고, 상기 표면 영상을 서버에 전송하는 3D 카메라;
    상기 표면 영상을 수신하여 상기 차량의 단차를 측정하는 서버;를 포함하며,
    상기 서버는,
    상기 표면 영상에서 상기 경계 영역을 기준으로 대향하는 복수의 기준점을 설정하고, 상기 복수의 기준점을 모두 포함하는 제1 영역을 크롭하는 영상 처리부;
    상기 제1 영역에서 상기 복수의 기준점 각각에 대응되는 제1, 2 포인트 클라우드를 추출하고, 이를 이용하여 좌표계를 정의하며, 상기 정의된 좌표계를 기준으로 일 영역의 제3 포인트 클라우드를 추출하고, 상기 제3 포인트 클라우드를 이용하여 상기 좌표계의 단위 벡터를 1차 보정하고, 상기 제1 보정에서 보정된 단위 벡터를 이용하여 상기 좌표계를 1차 재정의하고, 상기 1차 재정의된 좌표계를 기준으로 일 영역의 제4 포인트 클라우드를 추출하고, 상기 제4 포인트 클라우드를 이용하여 상기 1차 재정의된 좌표계의 단위 벡터를 2차 보정하고, 상기 제2 보정에서 보정된 단위 벡터를 이용하여 상기 1차 재정의된 좌표계를 2차 재정의하는 표면 좌표계 추정부;
    재정의된 좌표계를 기준으로 상기 제1 영역에 대응되는 포인트 클라우드를 일 평면에 프로젝션 하고, 상기 일 평면에 프로젝션된 데이터를 이용하여 상기 차량의 단차를 측정하는 단차 계산부;
    를 포함하는 단차 측정 시스템.

KR1020230122561A 2023-09-14 2023-09-14 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램 KR102648104B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230122561A KR102648104B1 (ko) 2023-09-14 2023-09-14 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230122561A KR102648104B1 (ko) 2023-09-14 2023-09-14 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR102648104B1 true KR102648104B1 (ko) 2024-03-15

Family

ID=90272610

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230122561A KR102648104B1 (ko) 2023-09-14 2023-09-14 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR102648104B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6052425B2 (ja) * 1977-05-17 1985-11-19 石川島播磨重工業株式会社 フイルムバッジの着帯装置
JP6052425B2 (ja) * 2013-10-25 2016-12-27 株式会社島津製作所 輪郭画像生成装置および核医学診断装置
CN107687816A (zh) * 2017-08-22 2018-02-13 大连理工大学 一种基于点云局部特征提取装配间隙的测量方法
US20230258445A1 (en) * 2022-02-17 2023-08-17 SpeedBot Robotics Co., Ltd. Three-dimensional (3d) structured light camera based method and system for measuring gap of vehicle body

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6052425B2 (ja) * 1977-05-17 1985-11-19 石川島播磨重工業株式会社 フイルムバッジの着帯装置
JP6052425B2 (ja) * 2013-10-25 2016-12-27 株式会社島津製作所 輪郭画像生成装置および核医学診断装置
CN107687816A (zh) * 2017-08-22 2018-02-13 大连理工大学 一种基于点云局部特征提取装配间隙的测量方法
US20230258445A1 (en) * 2022-02-17 2023-08-17 SpeedBot Robotics Co., Ltd. Three-dimensional (3d) structured light camera based method and system for measuring gap of vehicle body

Similar Documents

Publication Publication Date Title
US11042723B2 (en) Systems and methods for depth map sampling
US10573018B2 (en) Three dimensional scene reconstruction based on contextual analysis
US10288418B2 (en) Information processing apparatus, information processing method, and storage medium
US9443297B2 (en) System and method for selective determination of point clouds
BR102013024545A2 (pt) método implantado com uso de um dispositivo com base em processador, sistema e meio legível por computador
US11908081B2 (en) Method and system for automatic characterization of a three-dimensional (3D) point cloud
CN110189375B (zh) 一种基于单目视觉测量的图像目标识别方法
CN105335955A (zh) 对象检测方法和对象检测装置
JP6021689B2 (ja) 車両諸元計測処理装置、車両諸元計測方法及びプログラム
CN104616278A (zh) 三维点云兴趣点检测方法和系统
US11488354B2 (en) Information processing apparatus and information processing method
CN112802092B (zh) 一种障碍物感知方法、装置以及电子设备
CN107527368B (zh) 基于二维码的三维空间姿态定位方法与装置
JP2013205175A (ja) 3次元対象面認識装置および方法、ならびにプログラム
CN112683228A (zh) 单目相机测距方法及装置
WO2023109557A1 (zh) 连接器件检测方法、电子设备及存储介质
KR102648104B1 (ko) 차량 단차 측정 방법, 장치 및 컴퓨터 프로그램
Petrovai et al. Obstacle detection using stereovision for Android-based mobile devices
EP3879810A1 (en) Imaging device
KR102639637B1 (ko) 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템
WO2014054124A1 (ja) 路面標示検出装置及び路面標示検出方法
KR102433287B1 (ko) 학습 세트 생성 방법, 학습 세트 생성 장치, 및 학습 세트 생성 시스템
US20220148205A1 (en) Foreign matter detection device, foreign matter detection method, and program
CN114399800A (zh) 人脸姿态估计方法及装置
US20220018658A1 (en) Measuring system, measuring method, and measuring program

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20230914

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20230914

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20231120

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20240225

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20240312

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20240312

End annual number: 3

Start annual number: 1

PG1601 Publication of registration