KR102596257B1 - 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치 - Google Patents

기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치 Download PDF

Info

Publication number
KR102596257B1
KR102596257B1 KR1020210071897A KR20210071897A KR102596257B1 KR 102596257 B1 KR102596257 B1 KR 102596257B1 KR 1020210071897 A KR1020210071897 A KR 1020210071897A KR 20210071897 A KR20210071897 A KR 20210071897A KR 102596257 B1 KR102596257 B1 KR 102596257B1
Authority
KR
South Korea
Prior art keywords
model
feature
outer loop
information
face
Prior art date
Application number
KR1020210071897A
Other languages
English (en)
Other versions
KR20220163584A (ko
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 KR1020210071897A priority Critical patent/KR102596257B1/ko
Publication of KR20220163584A publication Critical patent/KR20220163584A/ko
Application granted granted Critical
Publication of KR102596257B1 publication Critical patent/KR102596257B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Geometry (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computer Graphics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Image Analysis (AREA)

Abstract

기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치가 개시된다. 개시되는 일 실시예에 따른 기계가공 특징형상 인식 방법은, 하나 이상의 프로세서들, 및 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비하는 컴퓨팅 장치에서 수행되는 방법으로서, 기계가공과 관련된 3D 모델을 획득하는 동작, 3D 모델에서 기 설정된 기준면을 인식하는 동작, 기준면에 대해 기 설정된 특징형상 기술자(Feature Discriptor)를 추출하는 동작, 및 추출한 특징형상 기술자를 3D 모델의 특징형상 타입으로 라벨링 한 후 인공 신경망 모델로 입력하여 인공 신경망 모델이 특징형상 기술자로부터 해당 3D 모델의 특징형상 타입을 분류하도록 상기 인공 신경망 모델을 학습시키는 동작을 포함한다.

Description

기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치{METHOD FOR RECOGNIZING MACHINING FEATURE AND COMPUTING DEVICE FOR EXECUTING THE METHOD}
본 발명의 실시예는 기계가공 특징형상 인식 기술과 관련된다.
정보 기술의 발전에 따른 제조 산업의 구조 변화로 인해 전 세계적으로 온라인 제조 지원에 관한 수요가 증가하였고, 그에 따라 온라인 제조 지원 플랫폼 산업이 성장하고 있다. 온라인 제조 지원은 고객이 제공한 3D CAD(Computer Aided Design) 모델에 대하여 제조성(Manufacturability)을 평가하여 제조사 선정, 견적 계산, 제조사에 제조 의뢰, 및 고객에게 완성품을 납품하는 전 과정을 포함한다.
여기서, 제조성 평가는 고객이 제공한 3D 모델에 대하여 제조 방식, 제조 난이도, 제조 가능성, 및 제조 비용을 판단하는 것으로, 온라인 상에서 제조 서비스가 원활하게 제공되기 위해서는 제조성 평가 과정의 자동화가 필요하다. 하지만 대부분의 고객은 부품의 외형 정보만을 가지는 B-rep(Boundary representation) 형식의 3D 모델을 제공한다. 이러한 부품의 외형 정보만으로는 제조성 평가를 수행하기 어렵기 때문에 제조성 평가에 필요한 제작 정보의 획득이 선행되어야 한다. 그리고, 제조성 평가에 필요한 정보를 획득하기 위해서는 일반적으로 B-rep 형식의 3D 모델로부터 기계가공 특징형상(Machining Feature)을 인식하여야 한다.
기계가공 특징형상을 인식하는 일반적인 방법은 그래프(graph), 볼륨 분해(volume decomposition), 힌트(hint), 및 유사도 비교(similarity measurement)와 같은 알고리즘 기반의 방법이 있다. 그러나, 알고리즘 기반의 방법은 특징형상들의 간섭이나 부분적인 파손이 있을 경우 특징 형상 인식이 어렵다는 단점이 있다.
최근, 이러한 문제를 보완하기 위해 딥러닝 기술을 활용하여 기계가공 특징형상을 인식하는 연구가 진행되고 있다. 하지만, B-rep 3D 모델은 데이터 구조 측면에서 신경망(neural network)의 입력 데이터로 직접 활용하기 어렵기 때문에, B-rep 3D 모델을 복셀(voxel), 메쉬(mesh), 또는 점군(point cloud) 형식의 모델로 변환하여 신경망의 입력으로 사용한다. 하지만 3D 모델의 형식 변환 과정에서 모델의 해상도가 낮아져서 일부 특징형상들이 소실되거나 혹은 B-rep 3D 모델의 특정 면(face)에 대응되는 변환된 모델의 영역을 찾기 어려운 문제점이 있다.
국내등록특허공보 제10-0567398호(2006.04.07)
본 발명은 3D 모델의 변환 없이 인공 신경망 모델을 이용하여 3D 모델의 특징형상을 인식하는 기술을 제공하기 위한 것이다.
한편, 본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
개시되는 일 실시예에 따른 기계가공 특징형상 인식 방법은, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비하는 컴퓨팅 장치에서 수행되는 방법으로서, 기계가공과 관련된 3D 모델을 획득하는 동작; 상기 3D 모델에서 기 설정된 기준면을 인식하는 동작; 상기 기준면에 대해 기 설정된 특징형상 기술자(Feature Discriptor)를 추출하는 동작; 및 추출한 특징형상 기술자를 상기 3D 모델의 특징형상 타입으로 라벨링 한 후 인공 신경망 모델로 입력하여 상기 인공 신경망 모델이 특징형상 기술자로부터 해당 3D 모델의 특징형상 타입을 분류하도록 상기 인공 신경망 모델을 학습시키는 동작을 포함한다.
상기 3D 모델의 기준면에는 기 설정된 색상이 부여되고, 상기 기준면을 인식하는 동작은, 상기 3D 모델에서 상기 색상에 기반하여 기 설정된 기준면을 인식할 수 있다.
상기 특징형상 기술자는, 대상면의 타입, 대상 면의 곡률, 대상 면의 폭, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보, 및 내부 루프의 위치와 볼록도 정보 중 적어도 하나를 포함할 수 있다.
상기 기계가공 특징형상 인식 방법은, 상기 특징형상 기술자를 정수로 인코딩하는 동작을 더 포함할 수 있다.
상기 인코딩하는 동작은, 상기 대상면의 타입, 대상면의 곡률, 및 대상 면의 폭 중 적어도 하나를 면 관련 항목으로 분류하여 제1 인코딩을 수행하는 동작; 상기 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 및 외부 루프에 수직한 인접 면 정보 중 적어도 하나를 외부 루프 관련 항목으로 분류하여 제2 인코딩을 수행하는 동작; 및 상기 내부 루프의 위치 및 볼록도 정보 중 적어도 하나를 내부 루프 관련 항목으로 분류하여 제3 인코딩을 수행하는 동작을 포함할 수 있다.
상기 제1 인코딩에 의한 기 설정된 개수의 정수 값, 상기 제2 인코딩에 의한 기 설정된 개수의 정수 값, 및 상기 제3 인코딩에 의한 기 설정된 개수의 정수 값을 기반으로 정수 배열을 구성하는 동작; 및 상기 정수 배열을 상기 인공 신경망 모델로 입력하는 동작을 포함할 수 있다.
상기 제2 인코딩을 수행하는 동작은, 상기 외부 루프와 관련된 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 산출하는 동작; 및 상기 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 정수로 인코딩하는 동작을 포함할 수 있다.
상기 외부 루프에 있는 인접 면 정보, 상기 외부 루프에서 연속성을 갖는 인접 면 정보, 및 상기 외부 루프에 수직한 인접 면 정보는, 해당 인접 면들의 타입과 볼록도(convexity) 쌍의 개수를 포함하고, 상기 볼록도는, 오목(concave) 및 볼록(convex)를 포함할 수 있다.
상기 비율을 산출하는 동작은, 상기 외부 루프 관련 항목 중 외부 루프에서 연속성을 갖는 인접 면 정보 및 외부 루프에 수직한 인접 면 정보의 경우, 해당 볼록도(convexity)가 볼록(convex)인 경우는 제외하고 오목(concave)인 인접면들의 비율만을 산출할 수 있다.
상기 인공 신경망 모델을 학습시키는 동작 이후에, 특징형상 타입을 분류하기 위한 3D 모델을 획득하는 동작; 상기 획득한 3D 모델의 각 면에 대해 기 설정된 특징형상 기술자를 추출하는 동작; 및 추출한 상기 특징형상 기술자를 학습 완료된 상기 인공 신경망 모델에 입력하여 상기 3D 모델의 특징형상 타입을 분류하는 동작을 더 포함할 수 있다.
개시된 발명의 일 측면에 따른 컴퓨터 프로그램은, 상기 특징형상 인식 방법을 실행시키도록 컴퓨터로 판독 가능한 기록매체에 저장될 수 있다.
개시되는 일 실시예에 따른 컴퓨팅 장치는, 하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비하는 컴퓨팅 장치로서, 기계가공과 관련된 3D 모델에서 기 설정된 기준면을 인식하고, 상기 기준면에 대해 기 설정된 특징형상 기술자(Feature Discriptor)를 추출하는 전처리 모듈; 및 추출한 특징형상 기술자를 상기 3D 모델의 특징형상 타입으로 라벨링 한 후 인공 신경망 모델로 입력하여 상기 인공 신경망 모델이 특징형상 기술자로부터 해당 3D 모델의 특징형상 타입을 분류하도록 상기 인공 신경망 모델을 학습시키는 인식 모듈을 포함한다.
상기 3D 모델의 기준면에는 기 설정된 색상이 부여되고, 상기 전처리 모듈은, 상기 3D 모델에서 상기 색상에 기반하여 기 설정된 기준면을 인식할 수 있다.
상기 특징형상 기술자는, 대상면의 타입, 대상 면의 곡률, 대상 면의 폭, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보, 및 내부 루프의 위치와 볼록도 정보 중 적어도 하나를 포함할 수 있다.
상기 전처리 모듈은, 상기 특징형상 기술자를 정수로 인코딩 하여 상기 인식 모듈로 전달할 수 있다.
상기 전처리 모듈은, 상기 대상면의 타입, 대상면의 곡률, 및 대상 면의 폭 중 적어도 하나를 면 관련 항목으로 분류하여 제1 인코딩을 수행하고, 상기 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 및 외부 루프에 수직한 인접 면 정보 중 적어도 하나를 외부 루프 관련 항목으로 분류하여 제2 인코딩을 수행하며, 상기 내부 루프의 위치와 볼록도 정보 중 적어도 하나를 내부 루프 관련 항목으로 분류하여 제3 인코딩을 수행할 수 있다.
상기 전처리 모듈은, 상기 제1 인코딩에 의한 기 설정된 개수의 정수 값, 상기 제2 인코딩에 의한 기 설정된 개수의 정수 값, 및 상기 제3 인코딩에 의한 기 설정된 개수의 정수 값을 기반으로 정수 배열을 구성하여 상기 인식 모듈로 전달하고, 상기 인식 모듈은, 상기 정수 배열을 상기 인공 신경망 모델로 입력할 수 있다.
상기 전처리 모듈은, 상기 제2 인코딩의 수행 시, 상기 외부 루프와 관련된 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 산출하고, 상기 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 정수로 인코딩 할 수 있다.
상기 외부 루프에 있는 인접 면 정보, 상기 외부 루프에서 연속성을 갖는 인접 면 정보, 및 상기 외부 루프에 수직한 인접 면 정보는, 해당 인접 면들의 타입과 볼록도(convexity) 쌍의 개수를 포함하고, 상기 볼록도는, 오목(concave) 및 볼록(convex)를 포함할 수 있다.
상기 전처리 모듈은, 상기 비율의 산출 시, 상기 외부 루프 관련 항목 중 외부 루프에서 연속성을 갖는 인접 면 정보 및 외부 루프에 수직한 인접 면 정보의 경우, 해당 볼록도(convexity)가 볼록(convex)인 경우는 제외하고 오목(concave)인 인접면들의 비율만을 산출할 수 있다.
상기 인공 신경망 모델의 학습이 완료된 후, 상기 전처리 모듈은, 특징형상 타입을 분류하기 위한 3D 모델을 획득하고, 상기 획득한 3D 모델의 각 면에 대해 기 설정된 특징형상 기술자를 추출하며, 상기 인식 모듈은, 추출한 상기 특징형상 기술자를 학습 완료된 상기 인공 신경망 모델에 입력하여 상기 3D 모델의 특징형상 타입을 분류할 수 있다.
개시되는 실시예에 의하면, 기계가공 특징형상을 인식하기 위한 인공 신경망 모델의 입력 데이터로 특징형상 기술자를 사용함으로써, 3D 모델의 형식 변환 없이 3D 모델의 면 정보를 직접 사용할 수 있으며, 그로 인해 3D 모델의 형식 변환 과정에서 발생하는 해상도 저하 및 일부 특징형상의 소실 등의 문제를 방지할 수 있게 된다.
또한, 3D 모델의 각 면에 대해 미리 정의된 구조에 따라 추출된 특징형상 기술자를 특징형상 인식에 사용하기 때문에, 인공 신경망 모델의 입력 데이터의 형식 및 크기를 고정할 수 있게 된다. 이러한 특징으로 인해 기계가공 특징형상 인식 장치를 3D CAD 시스템과 동적으로 직접 통합할 수 있게 된다.
한편, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 기계가공에서 특징형상 타입의 종류를 나타낸 도면이고,
도 2는 본 발명의 실시예에서 특정한 면에 대한 특징형상 기술자를 나타낸 도면이며,
도 3은 본 발명의 일 실시예에 따른 기계가공 특징형상 인식 장치의 구성을 나타낸 도면이고,
도 4는 본 발명의 일 실시예에 따른 전처리 모듈의 구성을 나타낸 도면이고,
도 5는 본 발명의 일 실시예에서 인코딩부가 외부 루프 관련 항목을 정수로 인코딩 하는 과정을 나타낸 도면이고,
도 6은 본 발명의 일 실시예에서 특징 형상 기술자를 정수 인코딩하는 상태를 나타낸 도면이고,
도 7은 본 발명의 일 실시예에 따른 인공 신경망 모델의 구성을 개략적으로 나타낸 도면이고,
도 8은 본 발명의 일 실시예에 따른 기계가공 특징형상 인식 방법을 나타낸 흐름도이며,
도 9는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다.
이하, 본 발명의 실시 예를 첨부된 도면들을 참조하여 더욱 상세하게 설명한다. 본 발명의 실시 예는 여러 가지 형태로 변형할 수 있으며, 본 발명의 범위가 아래의 실시 예들로 한정되는 것으로 해석되어서는 안 된다. 본 실시 예는 당업계에서 평균적인 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위해 제공되는 것이다. 따라서 도면에서의 요소의 형상은 보다 명확한 설명을 강조하기 위해 과장되었다.
본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시 예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 도면의 구성요소들에 참조번호를 부여함에 있어서 동일 구성요소에 대해서는 비록 다른 도면상에 있더라도 동일 참조번호를 부여하였으며 당해 도면에 대한 설명 시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다.
개시되는 실시예에서, 기계가공(Machining)은 선삭(Turning), 밀링(Milling), 및 드릴링(Drilling)을 포함할 수 있다. 그리고, 이러한 기계 가공에 사용되는 특징형상 타입은 도 1에 도시된 바와 같이 16가지의 타입으로 분류할 수 있다.
도 1을 참조하면, 특징형상 타입은 Hole 관련 특징형상 5종, Slot 관련 특징형상 3종, Pocket 관련 특징형상 2종, Island 관련 특징형상 2종, Filet 관련 특징형상 2종, 및 Chamfer 관련 특징형상 2종을 포함할 수 있다.
여기서, 3D CAD 시스템(Computer Aided Design)에서 로딩된 3D 모델의 각 면에 대해 특징형상 기술자(Feature Discriptor)를 추출하고, 추출한 특징형상 기술자를 기 학습된 인공 신경망 모델에 입력하여 3D 모델의 특징형상의 타입을 분류하며, 분류된 특징형상 타입(Feature Type)을 3D CAD 시스템에 반환할 수 있다. 이때, 3D CAD 시스템은 특징형상 타입에 따라 제조성 평가에 필요한 특징형상 정보를 추출하여 제조성 평가에 활용할 수 있다.
개시되는 실시예에서는, 각 특징형상 타입별로 기준면(base face)을 정의하고, 입력 면이 가진 속성 정보가 특정한 특징형상 타입의 기준면의 속성 정보와 유사한지 여부를 결정하여 입력 면을 특징형상의 기준면으로 인식할 수 있다. 여기서,
도 2에 도시된 바와 같이, 면의 주요 속성 항목(예를 들어, shape, indices of edges, length of edges, indices of adjacent faces, shapes of adjacent faces, convexity, angles with adjacent faces, normal vector 등)을 명시적으로 표현하여 저장한 것이 특징형상 기술자(Feature Discriptor)이다. 즉, 기계가공 특징형상의 인식은 특정한 면이 기계가공 특징형상 타입별 기준면에 해당되는지를 판단하는 문제가 될 수 있다.
이와 같이, 기계가공 특징형상을 인식할 때, 특징형상 기술자를 사용하게 되면 특징형상들 간의 간섭으로 인해 특징형상을 구성하는 면이나 모서리가 일부 변경이 되어 매칭이 어렵고 모호한 경우에도 효과적으로 기계가공 특징형상의 타입을 분류하여 인식할 수 있게 된다. 또한, 특징형상 기술자의 확장을 통해 기 설정되지 않은 다른 타입의 특징형상도 용이하게 인식할 수 있게 된다.
개시되는 실시예에서는, 기계가공 특징형상을 인식하기 위한 인공 신경망 모델의 입력 데이터로 특징형상 기술자를 사용하게 된다. 이 경우, 인공 신경망 모델은 3D 모델의 형식 변환(예를 들어, 복셀(voxel), 메쉬(mesh), 점군(point cloud) 등으로의 변환) 없이 3D 모델의 면 정보를 직접 사용하게 된다. 또한, 3D 모델의 각 면에 대해 미리 정의된 구조에 따라 추출된 특징형상 기술자를 특징형상 인식에 사용하기 때문에, 인공 신경망 모델의 입력 데이터의 형식 및 크기를 고정할 수 있게 된다. 이러한 특징으로 인해 기계가공 특징형상 인식 장치를 3D CAD 시스템과 동적으로 직접 통합할 수 있게 된다.
한편, 특징형상의 기준면(base face)은 해당 특징형상을 구성하는 위상이나 기하가 일부 변하더라도 해당 특징형상을 식별하는 기준으로 사용될 수 있는 면으로 설정될 수 있다. 즉, 기준면은 특징형상을 구성하는 많은 면들 중에서 해당 특징형상의 특징을 가장 잘 표현하는 면이 될 수 있다. 도 1에서는 각 특징형상 타입별로 기준면(base face)을 화살표로 표시하였다.
다시 도 1을 참조하면, Hole 관련 특징형상에서 Simple hole 또는 Taper hole은 rotation shape을 기준면으로 설정할 수 있다. Simple hole의 경우 rotation shape는 cylinder 형상을 가진다. 이때, cylinder는 한 개의 cylindrical face 또는 두 개의 half-cylindrical face로 표현될 수 있다. 또한, Taper hole의 경우 rotation shape는 cone 형상을 가진다. 이때, cone은 한 개의 conical face 또는 두 개의 half-conical face로 표현될 수 있다.
Countersink hole 및 Counterdrilled hole은 conical face를 기준면으로 설정할 수 있다. Counterbore hole은 두 cylindrical face 사이의 planar face를 기준면으로 설정할 수 있다.
Slot 관련 특징형상의 경우, bottom surface의 존재 여부에 따라 bottom face 또는 side face를 기준면으로 설정할 수 있다. Pocket 관련 특징형상과 Island 관련 특징형상의 경우, bottom face를 기준면으로 설정할 수 있다. Fillet 관련 특징 형상과 Chamfer 관련 특징 형상의 경우, cylindrical face 또는 planar face를 기준면으로 설정할 수 있다.
한편, 3D 모델의 면은 면 자체의 정보, 면을 구성하는 에지(edge)들의 정보, 에지를 구성하는 정점(vertex)에 관한 정보, 및 인접한 면(adjacent face)들에 대한 관계 정보를 포함할 수 있다. 그리고, 이러한 면에 대한 주요 속성 정보들이 해당 면에 대한 특징형상 기술자에 포함될 수 있다.
여기서, 면 자체의 정보로는 면의 타입(예를 들어, planar type, cylindrical face, toroidal face 등), 법선 벡터, 및 루프(inner loop 또는 outer loop 등) 정보를 포함할 수 있다. 정점(vertex)에 관한 정보는 해당 정점에 대한 좌표 정보를 포함할 수 있다. 인접한 면들에 대한 관계 정보는 해당 면 및 해당 면과 인접한 면과의 각도, 볼록도(convexity), 및 연속성(continuity)를 포함할 수 있다. Continuity는 두 인접한 면 간의 tangency와 curvature에 따라서 여러 등급(예를 들어, C0, G1, C1, G2, C2)으로 구분될 수 있다.
예시적인 실시예에서, 3D 모델의 특정 면에 대한 특징형상 기술자는 표 1로 표현될 수 있다.
(표 1)
여기서, 대상 면의 타입(Target face type)은 Bezier, BSpline, Rectangular Trimmed, Conical, Cylindrical, Planar, Spherical, Toroidal, Linear Extrusion, and Revolution의 10 종류로 구분될 수 있다. 대상 면의 곡률(Curvature of target face)은 positive, negative, 및 flat으로 구분될 수 있다.
대상 면의 폭(Width of target face)은 face-machining 타입과 edge-machining 타입으로 구분되며, 대상 면의 폭과 기 설정된 임계 값 간의 비교 결과를 longer 또는 shorter로 표시할 수 있다. face-machining 타입의 경우, 임계 값은 기계가공에 사용되는 공구의 최대 지름일 수 있다. edge-machining 타입의 경우, 임계 값은 face-machining 타입의 임계 값보다 작게 설정될 수 있다. 즉, 일반적으로 edge-machining 타입의 특징형상의 폭이 face-machining 타입의 특징형상의 폭보다 작으므로, edge-machining 타입의 임계 값을 face-machining 타입의 임계 값보다 작게 할 수 있다.
외부 루프에 있는 인접 면(Adjacent faces in an outer loop) 정보는 대상 면에 인접한 인접 면들의 타입과 볼록도(convexity) 쌍의 개수를 포함할 수 있다. 여기서, 볼록도(convexity)는 concave(오목), convex(볼록), 및 unknown으로 표기될 수 있다.
외부 루프에서 연속성을 갖는 인접 면(Adjacent faces with continuity in an outer loop) 정보는 대상 면과 인접한 면들 중 대상 면과 연속성(continuity)을 갖는 인접 면에 대한 정보로서, 해당 인접 면의 타입과 볼록도(convexity) 쌍의 개수를 포함할 수 있다.
외부 루프에 수직한 인접 면(Perpendicular adjacent faces in an outer loop) 정보는 대상 면과 인접한 면들 중 대상 면과 수직 관계를 갖는 인접 면에 대한 정보로서, 해당 인접 면의 타입과 볼록도(convexity) 쌍의 개수를 포함할 수 있다.
내부 루프의 위치 및 볼록도(Location and convexity of inner loops) 정보는 대상 면의 내부 루프의 위치와 내부 루프 상의 인접 면들이 갖는 볼록도(convexity) 쌍의 개수를 포함할 수 있다.
표 2는 표 1에서 정의한 특징형상 기술자의 구조에 따라 opened island 타입의 특징형상의 기준 면에서 추출한 특징형상 기술자를 나타낸 표이다.
(표 2)
위에서 기술한 내용을 기반으로 일 실시예에 따른 기계가공 특징형상 인식장치에 대해 설명하기로 한다.
도 3은 본 발명의 일 실시예에 따른 기계가공 특징형상 인식 장치의 구성을 나타낸 도면이다.
도 3을 참조하면, 기계가공 특징형상 인식 장치(100)는 인터페이스 모듈(102), 전처리 모듈(104), 및 인식 모듈(106)을 포함할 수 있다. 여기서, 인식 모듈(106)은 3D 모델의 특징형상을 분류하기 위한 인공 신경망 모델(106a)을 포함할 수 있다.
인터페이스 모듈(102)은 3D CAD 시스템(Computer Aided Design)(50)과 인터페이스 역할을 수행할 수 있다. 인터페이스 모듈(102)은 3D CAD 시스템(50)으로부터 기계가공과 관련된 3D 모델을 수신할 수 있다. 여기서, 기계가공(Machining)으로는 선삭(Turning), 밀링(Milling), 및 드릴링(Drilling)을 포함할 수 있다. 예시적인 실시예에서, 3D 모델은 부품의 외형 정보만을 가지는 B-rep(Boundary representation) 형식의 3D 모델일 수 있다. 인터페이스 모듈(102)은 인식 모듈(106)에서 분류한 특징형상 타입에 대한 정보를 3D CAD 시스템(50)으로 전달할 수 있다.
전처리 모듈(104)은 3D 모델에서 특징형상 기술자(Feature Discriptor)를 추출할 수 있다. 전처리 모듈(104)은 3D 모델에서 기준면을 인식하고, 인식된 기준면으로부터 기 설정된 특징형상 기술자를 추출할 수 있다.
도 4는 본 발명의 일 실시예에 따른 전처리 모듈의 구성을 나타낸 도면이다.
도 4를 참조하면, 전처리 모듈(104)은 기준면 인식부(111), 특징형상 기술자 추출부(113), 및 인코딩부(115)를 포함할 수 있다.
기준면 인식부(111)는 3D 모델의 기준면을 인식할 수 있다. 구체적으로, 기준면 인식부(111)는 인공 신경망 모델(106a)의 학습 단계에서 학습 데이터로서의 3D 모델에 설정된 기준면을 인식할 수 있다. 예를 들어, 학습 데이터로서의 3D 모델의 기준면에는 기 설정된 색상이 부여될 수 있으며, 기준면 인식부(111)를 이를 통해 3D 모델의 기준면을 인식할 수 있다.
특징형상 기술자 추출부(113)는 3D 모델의 면에 대해 특징형상 기술자를 추출할 수 있다. 구체적으로, 특징형상 기술자 추출부(113)는 인공 신경망 모델(106a)의 학습 단계에서 기준면 인식부(111)에 의해 인식된 기준면에 대해 특징형상 기술자를 추출할 수 있다. 또한, 특징형상 기술자 추출부(113)는 인공 신경망 모델(106a)의 예측 단계에서 3D 모델의 각 면에 대해 특징 형상 기술자를 추출할 수 있다.
여기서, 특징형상 기술자는 대상 면의 타입, 대상 면의 곡률, 대상 면의 폭, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보, 및 내부 루프의 위치와 볼록도 정보 등을 포함할 수 있다.
인코딩부(115)는 특징형상 기술자 추출부(113)에서 추출된 특징형상 기술자를 인코딩 할 수 있다. 인코딩부(115)는 추출된 특징형상 기술자를 인공 신경망 모델(106a)에 적용하기 위하여 정수 인코딩 기법으로 특징형상 기술자를 인코딩 할 수 있다. 여기서, 정수 인코딩은 자연어 처리 기법 중의 하나로서, 입력 자연어 형식의 데이터를 정수 형식의 데이터로 매핑하는 것을 의미한다.
인코딩부(115)는 특징형상 기술자를 면 관련 정보, 외부 루프 관련 정보, 및 내부 루프 관련 정보로 구분하여 인코딩 할 수 있다. 면 관련 정보는 대상 면의 타입, 대상 면의 곡률, 및 대상 면의 폭을 포함할 수 있다. 여기서, 특징형상 기술자 중 면 관련 항목은 표 3에서 보는 바와 같이, 각 항목별로 그 값에 따라 서로 다른 정수 ID가 할당될 수 있다.
(표 3)
또한, 표 4는 특징형상 기술자에서 면 관련 정보의 항목들에 대해 인코딩 한 예를 나타낸 표이다. 표 4에서 보는 바와 같이, 면 관련 정보의 항목들은 6, 0, 1, 1 이라는 4개의 정수 값으로 표현될 수 있다.
(표 4)
인코딩부(115)는 특징형상 기술자 중 외부 루프 관련 정보(즉, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보)를 도 5에 도시된 바와 같이 비율 형식으로 정규화 한 후 정수로 인코딩할 수 잇다.
기 정의된 특징형상 기술자에서는 외부 루프 관련 항목 값이 특정 타입에 해당되는 인접면의 개수로 표현된다. 따라서, 인접면이 많을수록 외부 루프 관련 항목의 값도 커지게 된다. 이를 방지하기 위해, 개시되는 실시예에서는 도 4의 b)에서와 같이 외부 루프를 구성하는 모든 인접면의 개수 대비 각 타입의 인접면의 비율을 산출하는 방식으로 정규화 할 수 있다.
이때, 인코딩부(115)는 외부 루프 관련 항목 중 외부 루프에서 연속성을 갖는 인접 면 정보 및 외부 루프에 수직한 인접 면 정보의 경우, 해당 볼록도(convexity)가 convex인 경우는 제외하고 concave인 인접면들의 비율만을 산출할 수 있다. 이는, 서로 인접하는 두 면이 수직하면 convexity는 concave가 되기 때문이다. 그리고, 서로 접하는 두 면이 C0 continuity 관계이면 convexity가 convex 또는 concave가 될 수 있으나, 기계가공 특징형상은 스톡(stock)에서 볼륨을 제거하여 원하는 형상을 만드는 방식이기 때문에 만들어지는 형상이 대부분 concave convexity를 갖기 때문이다.
또한, 모든 인접면의 개수 대비 비율을 계산하기 때문에, 도 4에서 외부 루프에 수직한 인접 면 정보(Perpendicular adjacent faces in an outer loop)의 경우, planar 타입의 면의 개수가 3개이고 전체 인접면의 개수는 6개이기 때문에, planar 타입의 비율은 50%가 된다.
인코딩부(115)는 모든 인접면의 개수 대비 각 타입의 인접면의 비율로 정규화된 값들을 정수로 인코딩 할 수 있다. 여기서, 모든 인접면의 개수 대비 각 타입의 인접면의 비율을 0에서 10 사이의 정수 값으로 표기하기 위해, 정규화된 값(즉, 비율 값)을 1의 자리에서 반올림 한 후 0.1을 곱할 수 있다. 그러면, 외부 루프 관련 항목은 면의 타입(11종)과 convexity를 고려한 기술자 항목(5종)에 따라 총 55개의 정수 값으로 표현될 수 있다.
한편, 기계가공 특징형상의 타입에서 내부 루프 정보가 활용되는 특징형상은 Islands 및 Counterbore hole이 있다. 여기서, Islands는 Anywhere|Concave 형식의 내부 루프를 가지고, Counterbore hole은 Center|Convex 형식의 내부 루프를 가진다. 이에 따라, 특징형상 기술자에서 내부 루프 관련 항목을 'Anywhere|Concave'및 'Center|Convex'로 세분화하였다.
인코딩부(115)는 내부 루프 관련 항목에서 'Anywhere|Concave'및 'Center|Convex'의 항목에 해당되는 내부 루프가 존재하면 1로, 'Anywhere|Concave'및 'Center|Convex'의 항목에 해당되는 내부 루프가 존재하지 않으면 0으로 인코딩 할 수 있다. 표 5는 특징형상 기술자에서 내부 루프 관련 항목들에 대해 인코딩 한 예를 나타낸 표이다.
(표 5)
표 5를 참조하면, 대상 면 내부에 Anywhere|Concave 타입의 내부 루프가 2개 있어 인코딩 값을 1로 하였고, Center|Convex 타입의 내부 루프는 없기 때문에 인코딩 값을 0으로 하였다. 이와 같이, 내부 루프 관련 항목은 2개의 정수 값으로 표현될 수 있다.
도 6은 본 발명의 일 실시예에서 특징 형상 기술자를 정수 인코딩하는 상태를 나타낸 도면이다.
도 5를 참조하면, 인코딩부(115)에 의해 정수로 인코딩된 특징형상 기술자는 면 관련 항목이 4개의 정수 값을 가지고, 외부 루프 관련 항목이 55개의 정수 값을 가지며, 내부 루프 관련 항목이 2개의 정수 값을 가져 총 61개의 정수 배열로 구성되게 된다. 이렇게 특징형상 기술자를 정수로 인코딩 하면, 3D 모델을 구성하는 모든 면의 종류에 관계 없이 동일한 크기를 가지기 때문에 인공 신경망 모델(106a)의 입력으로 사용하는 것이 용이해지게 된다.
인식 모듈(106)은 3D 모델의 특징형상 타입을 분류할 수 있다. 인식 모듈(106)은 전처리 모듈(104)에서 전달받은 특징형상 기술자 정보에 기반하여 3D 모델의 특징형상 타입을 분류할 수 있다. 인식 모듈(106)은 전처리 모듈(104)에서 전달받은 특징형상 기술자 정보를 입력으로 하여 3D 모델의 특징형상 타입을 분류하도록 학습된 인공 신경망 모델(106a)을 포함할 수 있다.
구체적으로, 인공 신경망 모델(106a)의 학습 단계에서 인식 모듈(106)은 전처리 모듈(104)에서 전달받은 3D 모델의 기준면에 대한 특징형상 기술자를 인공 신경망 모델(106a)로 입력할 수 있다. 이때, 입력되는 특징형상 기술자는 3D 모델의 특징형상 타입으로 라벨링 될 수 있다. 인공 신경망 모델(106a)은 인공 신경망 모델(106a)이 분류한 특징형상 타입과 라벨링 된 특징형상 타입(즉, 정답 값)이 일치하도록 학습될 수 있다.
인공 신경망 모델(106a)의 예측 단계에서 인식 모듈(106)은 전처리 모듈(104)로부터 전달받은 3D 모델의 각 면에 대한 특징형상 기술자를 순차적으로 인공 신경망 모델(106a)로 입력할 수 있다. 그러면, 인공 신경망 모델(106a)은 입력되는 면에 대한 특징형상 기술자의 특징이 특정한 특징형상 타입의 기준면에 대한 특징형상 기술자의 특징과 유사한지 여부를 판정하여 해당 3D 모델의 특징형상 타입을 분류하게 된다.
도 7은 본 발명의 일 실시예에 따른 인공 신경망 모델(106a)의 구성을 개략적으로 나타낸 도면이다.
도 7을 참조하면, 인공 신경망 모델(106a)은 입력 레이어(121), 은닉 레이어(123), 및 출력 레이어(125)를 포함할 수 있다. 각 레이어는 임의의 n개의 노드를 가질 수 있다. 여기서는, 인공 신경망 모델(106a)이 standard feed-forward fully connected 방식의 심층 신경망인 것을 일 예로 도시하였다. 심층 신경망의 전체 파라미터 개수는 레이어의 개수 및 레이어 별 노드의 개수에 따라 결정될 수 있다.
입력 레이어(121)는 인코딩 된 특징형상 기술자(즉, 61개의 정수 배열로 된 특징형상 기술자)를 입력 받을 수 있다. 히든 레이어(123)는 입력된 특징형상 기술자에서 특징을 추출할 수 있다. 출력 레이어(125)는 추출된 특징에 기반하여 특징형상 기술자에 대응하는 특징형상 타입에 대한 분류 값을 출력할 수 있다.
도 8은 본 발명의 일 실시예에 따른 기계가공 특징형상 인식 방법을 나타낸 흐름도이다. 여기서는, 인공 신경망 모델(106a)을 학습하는 방법에 흐름을 나타내었다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.
도 8을 참조하면, 기계가공 특징형상 인식 장치(100)는 기계가공과 관련된 3D 모델을 획득한다(S 101). 예를 들어, 기계가공 특징형상 인식 장치(100)는 3D CAD 시스템(50)으로부터 3D 모델을 획득할 수 있다. 이때, 3D 모델은 인공 신경망 모델(106a)을 학습하기 위한 학습 데이터로 사용될 수 있다.
다음으로, 기계가공 특징형상 인식 장치(100)는 3D 모델의 기준면을 인식한다(S 103). 기준면은 각 특징형상 타입에 대해 기 설정되어 있는 것으로, 학습 데이터로서의 3D 모델의 기준면에는 기 설정된 색상이 부여될 수 있다. 이를 통해, 3D 모델의 기준면을 인식할 수 있다.
다음으로, 기계가공 특징형상 인식 장치(100)는 기준면에 대한 특징형상 기술자를 추출한다(S 105). 이때, 특징형상 기술자는 기준 면의 타입, 기준 면의 곡률, 기준 면의 폭, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보, 및 내부 루프의 위치와 볼록도 정보 등을 포함할 수 있다.
다음으로, 기계가공 특징형상 인식 장치(100)는 추출된 특징형상 기술자를 인코딩한다(S 107). 기계가공 특징형상 인식 장치(100)는 정수 인코딩 기법으로 특징형상 기술자를 인코딩 할 수 있다. 이때, 특징형상 기술자를 면 관련 정보, 외부 루프 관련 정보, 및 내부 루프 관련 정보로 구분하여 인코딩 할 수 있다.
다음으로, 기계가공 특징형상 인식 장치(100)는 인코딩 된 특징형상 기술자를 해당 특징형상 타입으로 라벨링 한 후 인공 신경망 모델(106a)로 입력하여 인공 신경망 모델(106a)을 학습한다(S 109). 인공 신경망 모델(106a)은 인공 신경망 모델(106a)이 분류한 특징형상 타입과 라벨링 된 특징형상 타입(즉, 정답 값)이 일치하도록 학습될 수 있다.
개시되는 실시예에 의하면, 기계가공 특징형상을 인식하기 위한 인공 신경망 모델의 입력 데이터로 특징형상 기술자를 사용함으로써, 3D 모델의 형식 변환 없이 3D 모델의 면 정보를 직접 사용할 수 있으며, 그로 인해 3D 모델의 형식 변환 과정에서 발생하는 해상도 저하 및 일부 특징형상의 소실 등의 문제를 방지할 수 있게 된다.
또한, 3D 모델의 각 면에 대해 미리 정의된 구조에 따라 추출된 특징형상 기술자를 특징형상 인식에 사용하기 때문에, 인공 신경망 모델의 입력 데이터의 형식 및 크기를 고정할 수 있게 된다. 이러한 특징으로 인해 기계가공 특징형상 인식 장치를 3D CAD 시스템과 동적으로 직접 통합할 수 있게 된다.
도 9는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경(10)을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 기계가공 특징형상 인식 장치(100)일 수 있다.
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내어 설명하는 것이며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위내에서 변경 또는 수정이 가능하다. 저술한 실시예는 본 발명의 기술적 사상을 구현하기 위한 최선의 상태를 설명하는 것이며, 본 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.
10 : 컴퓨팅 환경
12 : 컴퓨팅 장치
14 : 프로세서
16 : 컴퓨터 판독 가능 저장 매체
18 : 통신 버스
20 : 프로그램
22 : 입출력 인터페이스
24 : 입출력 장치
26 : 네트워크 통신 인터페이스
100 : 기계가공 특징형상 인식 장치
102 : 인터페이스 모듈
104 : 전처리 모듈
106 : 인식 모듈
106a : 인공 신경망 모델
111 : 기준면 인식부
113 : 특징형상 기술자 추출부
115 : 인코딩부
121 : 입력 레이어
123 : 히든 레이어
125 : 출력 레이어

Claims (21)

  1. 하나 이상의 프로세서들, 및
    상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비하는 컴퓨팅 장치에서 수행되는 방법으로서,
    기계가공과 관련된 3D 모델을 획득하는 동작;
    상기 3D 모델에서 기 설정된 기준면을 인식하는 동작;
    상기 기준면에 대해 기 설정된 특징형상 기술자(Feature Discriptor)를 추출하는 동작;
    추출한 특징형상 기술자를 상기 3D 모델의 특징형상 타입으로 라벨링 한 후 인공 신경망 모델로 입력하여 상기 인공 신경망 모델이 특징형상 기술자로부터 해당 3D 모델의 특징형상 타입을 분류하도록 상기 인공 신경망 모델을 학습시키는 동작; 및
    상기 특징형상 기술자를 정수로 인코딩하는 동작을 포함하고,
    상기 특징형상 기술자는,
    대상면의 타입, 대상 면의 곡률, 대상 면의 폭, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보, 및 내부 루프의 위치와 볼록도 정보 중 적어도 하나를 포함하고,
    상기 인코딩하는 동작은,
    상기 대상면의 타입, 대상면의 곡률, 및 대상 면의 폭 중 적어도 하나를 면 관련 항목으로 분류하여 제1 인코딩을 수행하는 동작;
    상기 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 및 외부 루프에 수직한 인접 면 정보 중 적어도 하나를 외부 루프 관련 항목으로 분류하여 제2 인코딩을 수행하는 동작; 및
    상기 내부 루프의 위치 및 볼록도 정보 중 적어도 하나를 내부 루프 관련 항목으로 분류하여 제3 인코딩을 수행하는 동작을 포함하는, 기계가공 특징형상 인식 방법.
  2. 청구항 1에 있어서,
    상기 3D 모델의 기준면에는 기 설정된 색상이 부여되고,
    상기 기준면을 인식하는 동작은,
    상기 3D 모델에서 상기 색상에 기반하여 기 설정된 기준면을 인식하는, 기계가공 특징형상 인식 방법.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 청구항 1에 있어서,
    상기 제1 인코딩에 의한 기 설정된 개수의 정수 값, 상기 제2 인코딩에 의한 기 설정된 개수의 정수 값, 및 상기 제3 인코딩에 의한 기 설정된 개수의 정수 값을 기반으로 정수 배열을 구성하는 동작; 및
    상기 정수 배열을 상기 인공 신경망 모델로 입력하는 동작을 포함하는, 기계가공 특징형상 인식 방법.
  7. 청구항 1에 있어서,
    상기 제2 인코딩을 수행하는 동작은,
    상기 외부 루프와 관련된 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 산출하는 동작; 및
    상기 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 정수로 인코딩하는 동작을 포함하는, 기계가공 특징형상 인식 방법.
  8. 청구항 7에 있어서,
    상기 외부 루프에 있는 인접 면 정보, 상기 외부 루프에서 연속성을 갖는 인접 면 정보, 및 상기 외부 루프에 수직한 인접 면 정보는,
    해당 인접 면들의 타입과 볼록도(convexity) 쌍의 개수를 포함하고, 상기 볼록도는, 오목(concave) 및 볼록(convex)를 포함하는, 기계가공 특징형상 인식 방법.
  9. 청구항 8에 있어서,
    상기 비율을 산출하는 동작은,
    상기 외부 루프 관련 항목 중 외부 루프에서 연속성을 갖는 인접 면 정보 및 외부 루프에 수직한 인접 면 정보의 경우, 해당 볼록도(convexity)가 볼록(convex)인 경우는 제외하고 오목(concave)인 인접면들의 비율만을 산출하는, 기계가공 특징형상 인식 방법.
  10. 청구항 1에 있어서,
    상기 인공 신경망 모델을 학습시키는 동작 이후에,
    특징형상 타입을 분류하기 위한 3D 모델을 획득하는 동작;
    상기 획득한 3D 모델의 각 면에 대해 기 설정된 특징형상 기술자를 추출하는 동작; 및
    추출한 상기 특징형상 기술자를 학습 완료된 상기 인공 신경망 모델에 입력하여 상기 3D 모델의 특징형상 타입을 분류하는 동작을 더 포함하는, 기계가공 특징형상 인식 방법.
  11. 제1항, 제2항, 제6항 내지 제10항 중 어느 한 항의 특징형상 인식 방법을 실행시키도록 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  12. 하나 이상의 프로세서들, 및
    상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비하는 컴퓨팅 장치로서,
    기계가공과 관련된 3D 모델에서 기 설정된 기준면을 인식하고, 상기 기준면에 대해 기 설정된 특징형상 기술자(Feature Discriptor)를 추출하는 전처리 모듈; 및
    추출한 특징형상 기술자를 상기 3D 모델의 특징형상 타입으로 라벨링 한 후 인공 신경망 모델로 입력하여 상기 인공 신경망 모델이 특징형상 기술자로부터 해당 3D 모델의 특징형상 타입을 분류하도록 상기 인공 신경망 모델을 학습시키는 인식 모듈을 포함하고,
    상기 특징형상 기술자는,
    대상면의 타입, 대상 면의 곡률, 대상 면의 폭, 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 외부 루프에 수직한 인접 면 정보, 및 내부 루프의 위치와 볼록도 정보 중 적어도 하나를 포함하고,
    상기 전처리 모듈은,
    상기 특징형상 기술자를 정수로 인코딩 하여 상기 인식 모듈로 전달하고,
    상기 전처리 모듈은,
    상기 대상면의 타입, 대상면의 곡률, 및 대상 면의 폭 중 적어도 하나를 면 관련 항목으로 분류하여 제1 인코딩을 수행하고, 상기 외부 루프에 있는 인접 면 정보, 외부 루프에서 연속성을 갖는 인접 면 정보, 및 외부 루프에 수직한 인접 면 정보 중 적어도 하나를 외부 루프 관련 항목으로 분류하여 제2 인코딩을 수행하며, 상기 내부 루프의 위치와 볼록도 정보 중 적어도 하나를 내부 루프 관련 항목으로 분류하여 제3 인코딩을 수행하는, 컴퓨팅 장치.
  13. 청구항 12에 있어서,
    상기 3D 모델의 기준면에는 기 설정된 색상이 부여되고,
    상기 전처리 모듈은,
    상기 3D 모델에서 상기 색상에 기반하여 기 설정된 기준면을 인식하는, 컴퓨팅 장치.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 청구항 12에 있어서,
    상기 전처리 모듈은,
    상기 제1 인코딩에 의한 기 설정된 개수의 정수 값, 상기 제2 인코딩에 의한 기 설정된 개수의 정수 값, 및 상기 제3 인코딩에 의한 기 설정된 개수의 정수 값을 기반으로 정수 배열을 구성하여 상기 인식 모듈로 전달하고,
    상기 인식 모듈은, 상기 정수 배열을 상기 인공 신경망 모델로 입력하는, 컴퓨팅 장치.
  18. 청구항 12에 있어서,
    상기 전처리 모듈은,
    상기 제2 인코딩의 수행 시, 상기 외부 루프와 관련된 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 산출하고, 상기 모든 인접 면의 개수 대비 각 면 타입의 인접면의 비율을 정수로 인코딩하는, 컴퓨팅 장치.
  19. 청구항 18에 있어서,
    상기 외부 루프에 있는 인접 면 정보, 상기 외부 루프에서 연속성을 갖는 인접 면 정보, 및 상기 외부 루프에 수직한 인접 면 정보는,
    해당 인접 면들의 타입과 볼록도(convexity) 쌍의 개수를 포함하고, 상기 볼록도는, 오목(concave) 및 볼록(convex)를 포함하는, 컴퓨팅 장치.
  20. 청구항 19에 있어서,
    상기 전처리 모듈은,
    상기 비율의 산출 시, 상기 외부 루프 관련 항목 중 외부 루프에서 연속성을 갖는 인접 면 정보 및 외부 루프에 수직한 인접 면 정보의 경우, 해당 볼록도(convexity)가 볼록(convex)인 경우는 제외하고 오목(concave)인 인접면들의 비율만을 산출하는, 컴퓨팅 장치.
  21. 청구항 12에 있어서,
    상기 인공 신경망 모델의 학습이 완료된 후,
    상기 전처리 모듈은, 특징형상 타입을 분류하기 위한 3D 모델을 획득하고, 상기 획득한 3D 모델의 각 면에 대해 기 설정된 특징형상 기술자를 추출하며,
    상기 인식 모듈은, 추출한 상기 특징형상 기술자를 학습 완료된 상기 인공 신경망 모델에 입력하여 상기 3D 모델의 특징형상 타입을 분류하는, 컴퓨팅 장치.
KR1020210071897A 2021-06-03 2021-06-03 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치 KR102596257B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210071897A KR102596257B1 (ko) 2021-06-03 2021-06-03 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210071897A KR102596257B1 (ko) 2021-06-03 2021-06-03 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치

Publications (2)

Publication Number Publication Date
KR20220163584A KR20220163584A (ko) 2022-12-12
KR102596257B1 true KR102596257B1 (ko) 2023-10-30

Family

ID=84391581

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210071897A KR102596257B1 (ko) 2021-06-03 2021-06-03 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치

Country Status (1)

Country Link
KR (1) KR102596257B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008370A (ja) * 2009-06-24 2011-01-13 Fujitsu Telecom Networks Ltd 3d−cadシステム及びcadデータ管理方法
JP2017208092A (ja) * 2016-05-17 2017-11-24 富士通株式会社 記述子を使用して3dアイテムのデータベースを検索する方法及び装置
US20180189611A1 (en) * 2017-01-04 2018-07-05 Aquifi, Inc. Systems and methods for shape-based object retrieval

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100567398B1 (ko) 2003-12-05 2006-04-07 주식회사 제이엠피 캐드캠을 이용한 공작기계 가공물 기상측정방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008370A (ja) * 2009-06-24 2011-01-13 Fujitsu Telecom Networks Ltd 3d−cadシステム及びcadデータ管理方法
JP2017208092A (ja) * 2016-05-17 2017-11-24 富士通株式会社 記述子を使用して3dアイテムのデータベースを検索する方法及び装置
US20180189611A1 (en) * 2017-01-04 2018-07-05 Aquifi, Inc. Systems and methods for shape-based object retrieval

Also Published As

Publication number Publication date
KR20220163584A (ko) 2022-12-12

Similar Documents

Publication Publication Date Title
US11195007B2 (en) Classification of piping and instrumental diagram information using machine-learning
CN109002834B (zh) 基于多模态表征的细粒度图像分类方法
US10176404B2 (en) Recognition of a 3D modeled object from a 2D image
Chai et al. Autohair: Fully automatic hair modeling from a single image
CN109635150B (zh) 文本生成方法、装置以及存储介质
Cardone et al. A survey of shape similarity assessment algorithms for product design and manufacturing applications
Liu et al. User-adaptive sketch-based 3-D CAD model retrieval
CN114641753A (zh) 使用机器学习从楼层平面图图纸进行合成数据生成和建筑信息模型(bim)要素提取
CN103080982B (zh) 检测三维网格模型中的重复结构的方法和设备
CN110363049B (zh) 图形元素检测识别和类别确定的方法及装置
Zhang et al. Fast 3D indoor scene synthesis by learning spatial relation priors of objects
Kim et al. End-to-end digitization of image format piping and instrumentation diagrams at an industrially applicable level
JP7075654B2 (ja) 3次元cadモデル部分検索方法及び3次元cadモデル検索方法
KR102403330B1 (ko) 텍스트 데이터를 표현하는 가상 핑거프린트를 생성 및 활용하기 위한 기법
Bogacz et al. Digital assyriology—advances in visual cuneiform analysis
Zafari et al. Segmentation of partially overlapping convex objects using branch and bound algorithm
Theologou et al. A review on 3D object retrieval methodologies using a part-based representation
Henderson Analysis of engineering drawings and raster map images
Gezawa et al. A Deep Learning Approach to Mesh Segmentation.
CN112800262A (zh) 一种图像自组织聚类可视化方法及装置、存储介质
KR102596257B1 (ko) 기계가공 특징형상 인식 방법 및 이를 수행하기 위한 컴퓨팅 장치
Bielicki et al. A method of 3D object recognition and localization in a cloud of points
Ning et al. Optimized shape semantic graph representation for object understanding and recognition in point clouds
CN111091198B (zh) 一种数据处理方法及装置
Wu et al. Similar image retrieval in large-scale trademark databases based on regional and boundary fusion feature

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant