KR20180080786A - 3d 프린팅을 위한 데이터 처리 방법 및 장치 - Google Patents

3d 프린팅을 위한 데이터 처리 방법 및 장치 Download PDF

Info

Publication number
KR20180080786A
KR20180080786A KR1020170001740A KR20170001740A KR20180080786A KR 20180080786 A KR20180080786 A KR 20180080786A KR 1020170001740 A KR1020170001740 A KR 1020170001740A KR 20170001740 A KR20170001740 A KR 20170001740A KR 20180080786 A KR20180080786 A KR 20180080786A
Authority
KR
South Korea
Prior art keywords
data
model
data processing
sectional
printing
Prior art date
Application number
KR1020170001740A
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 KR1020170001740A priority Critical patent/KR20180080786A/ko
Publication of KR20180080786A publication Critical patent/KR20180080786A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B33ADDITIVE MANUFACTURING TECHNOLOGY
    • B33YADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
    • B33Y50/00Data acquisition or data processing for additive manufacturing
    • B33Y50/02Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • 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/20092Interactive image processing based on input by user
    • G06T2207/20108Interactive selection of 2D slice in a 3D data set

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Chemical & Material Sciences (AREA)
  • Manufacturing & Machinery (AREA)
  • Materials Engineering (AREA)

Abstract

3D 프린팅을 위한 데이터 처리 방법이 개시된다. 본 발명은 3D 프린팅을 위한 데이터를 처리하는 장치에서 수행되는 3D 프린팅을 위한 데이터 처리 방법으로서, 3D 프린팅을 위해 수신되는 3D 모델 데이터에 기초하여 3D 모델의 2D 단면 데이터를 생성하는 단계, 2D 단면 데이터에 포함된 복수의 2D 단면도들 중 하나인 제1 단면도 상으로 3D 모델이 투영된 픽셀에 대한 고해상도 단면도를 생성하는 단계, 픽셀의 정규 벡터 및 x-y 평면에 대한 기울기를 기반으로 제1 단면도의 크기 변화를 나타내는 파라미터를 산출하는 단계, 2D 단면 데이터, 고해상도 단면도 및 파라미터를 기반으로 3D 모델의 3D 프린팅을 위한 데이터 패키지를 생성하는 단계 및 생성된 데이터 패키지를 3D 프린팅을 위한 3D 프린터로 전송하는 단계를 포함한다.

Description

3D 프린팅을 위한 데이터 처리 방법 및 장치{DATA PROCESSING METHOD FOR 3D PRINTING AND APPRATUS THEREFOR}
본 발명은 3D 프린팅을 위한 데이터 처리 방법에 관한 것으로, 더욱 상세하게는 보다 정밀한 3D 프린팅을 위해 3D 모델 데이터를 패키징하는 방법에 관한 것이다.
3D 프린팅(3Dimension printing)은 3차원으로 설계된 데이터를 기반으로 다양한 원료를 사출하여 입체적인 형태의 물체를 만들어내는 기술을 말한다. 이와 같은, 3D 프린팅은 제조 분야를 포함하여 여러 분야에서 기술 패러다임(paradigm)을 전환함으로써 새로운 산업 혁신을 가져오고 있다.
구체적으로, 3D 프린팅은 3D 프린터(printer)에서 수행될 수 있으며, 3D 모델(3D model) 데이터를 동일한 해상도를 가지는 2D 단면 데이터를 이용할 수 있다. 즉, 3D 프린터는 동일한 해상도를 가지는 복수의 2D 단면 데이터들을 입력 데이터로 수신하게 된다. 여기서, 2D 단면 데이터는 3D 모델 데이터의 z축을 중심으로 x-y 평면에 평행한 단면을 의미할 수 있다.
그러나, 이와 같은 3D 프린팅의 입력 데이터로 사용되는 복수의 2D 단면 데이터들은 해상도가 높지 않기 때문에, 정확한 3D 모델 데이터를 표현하기 어려운 문제가 있다. 이에 따라, 3D 프린터에서 출력되는 3D 프린팅 출력물은 표면이 부드럽지 못하고, 정밀한 출력물을 출력하지 못하는 문제가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 보다 정밀한 3D 프린팅을 위해 3D 프린터로 전송되는 3D 프린팅 데이터를 패키징 가능한 3D 프린팅을 위한 데이터 처리 방법 및 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법은 3D 프린팅을 위한 데이터를 처리하는 장치에서 수행되는 3D 프린팅을 위한 데이터 처리 방법으로서, 상기 3D 프린팅을 위해 수신되는 3D 모델(model) 데이터에 기초하여 3D 모델의 2D 단면 데이터를 생성하는 단계, 상기 2D 단면 데이터에 포함된 복수의 2D 단면도들 중 하나인 제1 단면도 상으로 상기 3D 모델이 투영된 픽셀(pixel)에 대한 고해상도 단면도를 생성하는 단계, 상기 픽셀의 정규 벡터(normal vector) 및 x-y 평면에 대한 기울기를 기반으로 상기 제1 단면도의 크기 변화를 나타내는 파라미터(parameter)를 산출하는 단계, 상기 2D 단면 데이터, 상기 고해상도 단면도 및 상기 파라미터를 기반으로 상기 3D 모델의 3D 프린팅을 위한 데이터 패키지를 생성하는 단계 및 상기 생성된 데이터 패키지를 상기 3D 프린팅을 위한 3D 프린터로 전송하는 단계를 포함 한다.
본 발명에 의하면, 3D 프린터에서 수행되는 3D 프린팅의 속도를 향상시킬 수 있고, 출력되는 3D 프린팅 출력물의 표면이 부드러워짐으로써 3D 프린팅의 정밀도를 향상시킬 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 장치를 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 도시한 개념도이다.
도 3은 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 모듈을 도시한 개념도이다.
도 4는 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 도시한 흐름도이다.
도 5는 3D 프린팅을 위한 3D 모델 데이터에서 2D 단면 데이터를 생성하는 과정을 도시한 개념도이다.
도 6은 2D 단면 데이터에서 3D 모델을 투영하는 방법을 도시한 개념도이다.
도 7은 본 발명의 일 실시예에 따른 고해상도 단면도를 생성하는 방법을 도시한 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 고해상도 단면도를 생성하는 구체적인 방법을 도시한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 고해상도 단면도를 생성하는 과정을 도시한 개념도이다.
도 10은 본 발명의 일 실시예에 따른 정규 벡터 및 기울기를 산출하기 위한 과정을 도시한 개념도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 장치를 도시한 블록도이다.
도 1을 참조하면, 본 발명의 3D 프린팅을 위한 데이터 처리 방법을 수행하는 3D 프린팅을 위한 데이터 처리 장치(이하, "데이터 처리 장치"라 함)(100)는 적어도 하나의 프로세서(110), 메모리(120) 및 네트워크와 연결되어 통신을 수행하는 네트워크 인터페이스 장치(130)를 포함할 수 있다. 또한, 데이터 처리 장치(100)는 입력 인터페이스 장치(140), 출력 인터페이스 장치(150), 저장 장치(160) 등을 더 포함할 수 있다. 데이터 처리 장치(100)에 포함된 각각의 구성 요소들은 버스(bus)(170)에 의해 연결되어 서로 통신을 수행할 수 있다.
프로세서(110)는 메모리(120) 및/또는 저장 장치(160)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(110)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(120)와 저장 장치(160)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(120)는 읽기 전용 메모리(read only memory, ROM) 및/또는 랜덤 액세스 메모리(random access memory, RAM)로 구성될 수 있다. 여기서, 프로세서(110)를 통해 실행되는 프로그램 명령은 본 발명에서 제안하는 3D 프린팅을 위한 데이터 처리 방법을 수행하는 복수의 단계들을 포함할 수 있다.
도 2는 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 도시한 개념도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법은 도 1을 참조하여 설명된 데이터 처리 장치(100)에서 수행될 수 있다. 또한, 데이터 처리 장치(100)는 3D 모델 데이터를 처리하기 위한 데이터 처리 모듈(1000)을 포함할 수 있다.
먼저, 데이터 처리 장치(100)는 3D 모델(model)이 모델링 된 3D 모델 데이터(10)을 수신할 수 있다. 예를 들어, 데이터 처리 장치(100)는 3D 모델 데이터는 3D 모델을 촬영하거나 스캐닝(scanning) 가능한 장치와 유선 또는 무선으로 연결될 수 있고, 이를 통해 3D 모델 데이터를 수신할 수 있다.
이후, 데이터 처리 장치(100)는 데이터 처리 모듈(1000)을 통해 3D 모델 데이터를 처리하여, 3D 프린팅을 위한 3D 데이터 패키지(20)를 생성할 수 있다. 즉, 데이터 처리 모듈(1000)에서 수행되는 데이터 처리 과정은 3D 프린팅을 위한 데이터 패키지를 생성하기 위한 전처리(preprocessing) 과정을 의미할 수 있다.
이후, 데이터 처리 장치(100)는 생성된 데이터 패키지(20)를 3D 프린팅이 가능한 3D 프린터(200)로 전송할 수 있다. 예를 들어, 데이터 처리 장치(100)는 3D 프린터(200)와 유선 또는 무선으로 연결될 수 있고, 이를 통해 데이터 패키지(20)를 3D 프린터(200)로 전송할 수 있다.
상술한 바와 같이, 도 2에서는 데이터 처리 장치(100)가 3D 프린터(200)와 별도의 장치인 것으로 설명되었으나, 이에 한정되는 것은 아니다. 즉, 데이터 처리 장치(100)는 3D 프린터(200)내에 포함될 수다. 이에 따라, 데이터 처리 장치에서 수행되는 데이터 패키지를 생성하는 과정이 3D 프린터(200) 내에서 수행될 수도 있다. 이하에서는, 도 3을 참조하여 데이터 처리 장치(100)에 포함된 데이터 처리 모듈(1000)에 대하여 구체적으로 설명될 수 있다.
도 3은 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 모듈을 도시한 개념도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 장치(100)는 데이터 처리 모듈(1000)을 포함할 수 있다. 또한, 데이터 처리 모듈(1000)은 단면 데이터 모듈(1100), 고해상도 단면도 모듈(1200), 정규 벡터(normal vector)(1300) 모듈, 기울기 모듈(1400), 크기 변화 판단 모듈(1500) 및 데이터 패키징 모듈(1600)을 포함할 수 있다.
먼저, 데이터 처리 모듈(1000)에 포함된 단면 데이터 모듈(1100)은 3D 모델 데이터(10)의 2D 단면 데이터를 생성할 수 있다. 여기서, 단면 데이터는 3D 모델 데이터(10)가 나타내는 3D 모델의 2D 단면에 대한 데이터를 의미할 수 있다. 또한, 고해상도 단면도 모듈(1200)은 3D 모델의 2D 단면 데이터에서 3D 모델이 투영된 부분에 대한 고해상도 단면도를 생성할 수 있다.
또한, 정규 벡터 모듈(1300)은 2D 단면 데이터에서의 정규 벡터를 산출할 수 있다. 또한, 기울기 모듈(1400)은 2D 단면 데이터에서의 기울기를 산출할 수 있다. 또한, 크기 변화 판단 모듈(1500)은 2D 단면 데이터의 정규 벡터 및 기울기를 기반으로 2D 단면 데이터의 크기 변화를 나타내는 파라미터(parameter)를 산출할 수 있다. 또한, 데이터 패키징 모듈(1600)은 2D 단면 데이터, 고해상도 단면도 및 파라미터를 기반으로 3D 프린팅을 위한 데이터 패키지(20)를 생성할 수 있다. 또한, 도 3에는 도시되지 않았으나, 데이터 처리 모듈(1000)은 생성된 데이터 패키지를 전송하기 위한 통신 모듈을 더 포함할 수도 있다. 즉, 데이터 처리 모듈(1000)은 데이터 처리 장치(100)와 유선 또는 무선으로 연결된 3D 프린터(200)와 같은 외부 장치와 통신 모듈을 통해 통신을 수행할 수 있다.
데이터 처리 장치(100)에 포함된 복수의 모듈들은 물리적인 구성이 아닌, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하기 위한 동작에 따라 구분된 논리적인 구성을 의미할 수 있다. 즉, 복수의 모듈들을 통해 수행되는 동작들은 도 1을 참조하여 설명된 프로세서(110)에 의해 실행되는 적어도 하나의 명령을 통해 수행될 수 있다.
이하에서는, 도 4 내지 도 10을 참조하여 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법이 구체적으로 설명될 수 있다. 또한, 이하에서 설명되는 데이터 처리 방법은 도 1 내지 도 3을 참조하여 설명된 3D 프린팅을 위한 데이터 처리 장치(100)에서 수행될 수 있다.
도 4는 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 도시한 흐름도이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 장치는 3D 프린팅을 위해 수신되는 3D 모델 데이터에 기초하여 3D 모델의 2D 단면 데이터를 생성할 수 있다(S100). 예를 들어, 3D 모델 데이터는 3D 모델을 촬영하거나 스캐닝 가능한 장치(예를 들어, 캠코더 및 카메라 등)로부터 수신될 수 있다. 또는, 데이터 처리 장치의 사용자에 의해 사용자 단말(예를 들어, 핸드폰 및 PC 등)에서 3D 프린팅이 요구되는 3D 모델의 3D 모델 데이터가 데이터 처리 장치로 전송될 수도 있다.
구체적으로, 데이터 처리 장치는 3D 모델 데이터가 나타내는 3D 모델의 z축을 중심으로 x-y 평면과 평행하도록 3D 모델을 분할할 수 있다. 이와 같은 방법을 통해, 데이터 처리 장치는 3D 모델 데이터에 기초하여 3D 모델의 복수의 2D 단면도들을 생성할 수 있다. 이후, 데이터 처리 장치는 복수의 2D 단면도들을 포함하는 3D 모델의 2D 단면 데이터를 생성할 수 있다.
이하에서는, 도 5 내지 도 6을 참조하여 데이터 처리 장치에서 3D 프린팅을 위해 수신되는 3D 모델 데이터에 기초하여 3D 모델의 2D 단면 데이터를 생성하는 방법이 구체적으로 설명될 수 있다.
도 5는 3D 프린팅을 위한 3D 모델 데이터에서 2D 단면 데이터를 생성하는 과정을 도시한 개념도이다.
도 5를 참조하면, 3D 모델 데이터가 나타내는 3D 모델(1)은 x축, y축 및 z축에 기초하여 표현될 수 있다. 데이터 처리 장치는 3D 모델 데이터가 수신되면, 3D 모델 데이터가 나타내는 3D 모델(1)의 z축을 중심으로 x-y 평면과 평행하도록 3D 모델을 분할하여 3D 모델의 복수의 2D 단면도들을 생성할 수 있다.
여기서, z축을 중심으로 x-y 평면과 평행하도록 분할되는 간격은 데이터 처리 장치에 미리 설정될 수 있다. 예를 들어, 데이터 처리 장치에 미리 설정되는 간격은 3D 프린팅에서 요구되는 정확도에 따라 달라질 수 있다. 즉, 데이터 처리 장치는 3D 프린팅에서 요구되는 정확도가 높을수록 미리 설정되는 간격은 좁을 수 있다.
이후, 데이터 처리 장치는 복수의 2D 단면도들을 포함하는 3D 모델(1)의 2D 단면 데이터를 생성할 수 있다. 이후, 데이터 처리 장치는 복수의 2D 단면도들 중 하나인 제1 단면도(3)을 추출할 수 있다. 이후, 데이터 처리 장치는 제1 단면도(3)를 복수의 픽셀들로 투영할 수 있고, 복수의 픽셀들 중 3D 모델(1)이 투영된 픽셀(3)을 추출할 수 있다.
이하에서는, 도 6을 참조하여 데이터 처리 장치가 3D 모델(1)이 투영된 픽셀(3)을 추출하는 방법을 도 6을 통해 확인할 수 있다. 여기서, 데이터 처리 장치는 복수의 2D 단면도들 중 제1 단면도(3)에 대하여 3D 모델(1)이 투영된 픽셀(3)을 추출하는 것으로 설명되고 있으나, 이와 같은 방법으로 복수의 2D 단면도들에 대하여 3D 모델(1)이 투영된 픽셀을 추출할 수 있다. 다만, 데이터 처리 장치에서 제1 단면도(3)에 대하여 3D 모델(1)이 투영된 픽셀(3)을 추출하는 것으로 예를 들어 설명될 수 있다.
도 6은 2D 단면 데이터에서 3D 모델을 투영하는 방법을 도시한 개념도이다.
도 6을 참조하면, 데이터 처리 장치는 제1 단면도(3)을 미리 설정된 크기를 가지는 복수의 픽셀들로 매핑(mapping)할 수 있다. 즉, 데이터 처리 장치는 제1 단면도(3)를 복수의 픽셀들 상으로 매핑하여 복수의 픽셀들이 매핑된 제1 단면도(3-1)를 생성할 수 있다.
이후, 데이터 처리 장치는 복수의 픽셀들이 매핑된 제1 단면도(3-1)의 복수의 픽셀들 중 3D 모델(1)이 투영된 비율이 미리 설정된 임계값 이상인 복수의 픽셀들을 3D 모델(1)에 해당하는 픽셀로 판단할 수 있다. 이후, 데이터 처리 장치는 복수의 픽셀들에 대하여 3D 모델(1)의 해당 여부를 판단할 수 있고, 이를 통해 3D 모델(1)이 투영된 2D 단면도(3-2)를 생성할 수 있다.
예를 들어, 3D 모델(1)의 해당 여부를 판단하기 위해 미리 설정된 임계값이 60%인 경우, 데이터 처리 장치는 복수의 픽셀들 중 3D 모델(1)이 투영된 비율이 60% 이상인 픽셀을 3D 모델(1)에 해당하는 픽셀로 판단할 수 있다. 이후, 데이터 처리 장치는 복수의 픽셀들에 대하여 3D 모델(1)의 해당 여부에 따라 3D 모델(1)에 해당하는 픽셀 및 3D 모델(1)에 해당하지 않는 픽셀 중 하나로 구분할 수 있다. 이와 같은 방법을 통해, 데이터 처리 장치는 3D 모델(1)이 투영된 2D 단면도(3-2)를 생성할 수 있다.
한편, 다시 도 5를 참조하면, 데이터 처리 장치는 복수의 픽셀들이 매핑된 제1 단면도(3-1)에서 제1 픽셀(3)을 추출할 수 있다. 이후, 데이터 처리 장치는 추출된 제1 픽셀(3)에서 3D 모델(1)의 두께(t)를 측정할 수 있다. 여기서, 제1 픽셀(3)에서 측정된 3D 모델(1)의 두께(t)는 3D 프린팅에 사용될 수 있도록 3D 프린터로 전송될 수 있다.
다시, 도 4를 참조하면 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 장치는 상술한 바와 같은 과정을 기반으로 3D 모델의 2D 단면 데이터를 생성할 수 있다. 이후, 데이터 처리 장치는 2D 단면 데이터에 포함된 복수의 2D 단면도들 중 하나인 제1 단면도 상으로 3D 모델이 투영된 픽셀에 대한 고해상도 단면도를 생성할 수 있다(S200). 구체적으로, 데이터 처리 장치에서 고해상도 단면도를 생성하는 방법은 이하에서 도 7 내지 도 9를 참조하여 설명될 수 있다.
도 7은 본 발명의 일 실시예에 따른 고해상도 단면도를 생성하는 방법을 도시한 흐름도이다.
도 7을 참조하면, 데이터 처리 장치는 2D 단면 데이터에 포함된 복수의 2D 단면도들 중 제1 단면도를 추출할 수 있다(S210). 이후, 데이터 처리 장치는 제1 단면도를 미리 설정된 제1 크기를 가지는 복수의 픽셀들로 매핑할 수 있다(S220).
이후, 데이터 처리 장치는 제1 단면도와 매핑된 제1 크기를 가지는 복수의 픽셀들 중 3D 모델이 투영된 적어도 하나의 픽셀을 추출할 수 있다(S230). 이후, 데이터 처리 장치는 추출된 적어도 하나의 픽셀을 미리 설정된 제2 크기를 가지는 복수의 픽셀들로 매핑하여 고해상도 단면도를 생성할 수 있다(S240). 여기서, 미리 설정된 제1 크기는 미리 설정된 제2 크기보다 클 수 있다.
이에 따라, 미리 설정된 제2 크기는 미리 설정된 제1 크기보다 작으므로, 적어도 하나의 픽셀은 확대되는 효과를 가질 수 있다. 다시 말해, 적어도 하나의 픽셀이 제2 크기를 가지는 복수의 픽셀들로 매핑되는 것은 적어도 하나의 셀이 높은 해상도(resolution)을 가지게 되는 것과 동일한 의미일 수 있다.
이하에서는, 데이터 처리 장치에서 제2 크기를 가지는 복수의 픽셀들을 기반으로 고해상도 단면도를 생성하는 방법이 도 8을 참조하여 구체적으로 설명될 수 있다.
도 8은 본 발명의 일 실시예에 따른 고해상도 단면도를 생성하는 구체적인 방법을 도시한 흐름도이다.
도 8을 참조하면, 데이터 처리 장치는 제2 크기를 가지는 복수의 픽셀들 각각에 3D 모델이 투영된 비율을 산출할 수 있다. 이후, 데이터 처리 장치는 3D 모델이 투영된 비율을 미리 설정된 임계값과 비교할 수 있다(S241). 이후, 데이터 처리 장치는 3D 모델이 투영된 비율 및 미리 설정된 임계값 간의 비교 결과를 기반으로 제2 크기를 가지는 복수의 픽셀들이 3D 모델에 해당하는 지를 판단할 수 있다(S242).
구체적으로, 데이터 처리 장치는 제2 크기를 가지는 복수의 픽셀들 중 3D 모델이 투영된 비율이 미리 설정된 임계값 이상인 픽셀을 3D 모델에 해당하는 픽셀로 판단할 수 있다. 반면, 데이터 처리 장치는 제2 크기를 가지는 복수의 픽셀들 중 3D 모델이 투영된 비율이 미리 설정된 임계값 미만인 픽셀을 3D 모델에 해당하지 않는 픽셀로 판단할 수 있다.
이후, 데이터 처리 장치는 제2 크기를 가지는 복수의 픽셀들의 3D 모델 해당 여부에 대한 판단 결과를 기반으로 고해상도 단면도를 생성할 수 있다(S243). 즉, 고해상도 단면도에 포함된 제2 크기를 가지는 복수의 픽셀들은 3D 모델의 해당 여부에 따라 구분되므로, 2진수(binary number)의 형태로 표현될 수 있다. 상술한 바와 같은 과정을 통해, 데이터 처리 장치는 고해상도 단면도를 생성할 수 있으며, 이에 대한 일 예는 이하에서 도 9를 참조하여 설명될 수 있다.
도 9는 본 발명의 일 실시예에 따른 고해상도 단면도를 생성하는 과정을 도시한 개념도이다.
도 9를 참조하면, 데이터 처리 장치는 도 8을 참조하여 설명된 바와 같이, 미리 설정된 제1 크기를 가지는 복수의 픽셀들로 제1 단면도를 매핑하여, 제1 크기를 가지는 복수의 픽셀들로 매핑된 제1 단면도(4)를 생성할 수 있다. 예를 들어, 복수의 픽셀들은 (i-1, j-1), (i-1, j) 및 (i-1, j+1) 등과 같이 좌표값으로 구분될 수 있다.
이후, 데이터 처리 장치는 제1 크기를 가지는 복수의 픽셀들로 매핑된 제1 단면도(4)에서 3D 모델이 투영된 비율을 기반으로 3D 모델이 투영된 적어도 하나의 픽셀들을 추출할 수 있다. 다만, 도 9에서는 제1 크기를 가지는 복수의 픽셀들 중 3D 모델이 포함된 픽셀은 모두 추출한 것으로 가정할 수 있다.
이후, 데이터 처리 장치는 3D 모델이 투영된 복수의 픽셀들 중 고해상도 단면도를 생성하기 위한 제1 픽셀(4-2)을 추출할 수 있다. 여기서, 제1 픽셀(4-2)의 좌표값은 (i,j)일 수 있다. 이후, 데이터 처리 장치는 제1 픽셀(4-2)을 미리 설정된 제2 크기를 가지는 복수의 픽셀들로 매핑할 수 있다.
이후, 데이터 처리 장치는 제2 크기를 가지는 복수의 픽셀들에 3D 모델이 투영된 비율을 판단할 수 있고, 판단 결과를 기반으로 제2 크기를 가지는 "珦? 픽셀들 중 3D 모델에 해당하는 픽셀을 판단할 수 있다. 여기서, 데이터 처리 장치가 3D 모델에 해당하는 픽셀을 판단하는 구체적인 방법은 도 8을 참조하여 설명된 바와 동일할 수 있다.
이후, 데이터 처리 장치는 제2 크기를 가지는 복수의 픽셀들의 3D 모델 해당 여부에 대한 판단 결과를 기반으로 제1 픽셀(4-2)에 대한 고해상도 단면도를 생성할 수 있다.
한편, 다시 도 4를 참조하면, 데이터 처리 장치는 고해상도 단면도의 픽셀에 대하여 정규 벡터를 산출할 수 있다. 여기서, 정규 벡터는 픽셀에 투영된 3D 모델의 표면과 접하는 벡터와 수직인 복수의 벡터들 중 3D 모델의 중심 방향과 반대 방향을 향하는 벡터를 의미할 수 있다.
이후, 데이터 처리 장치는 고해상도 단면도의 픽셀에 대한 x-y 평면 상의 기울기를 산출할 수 있다. 구체적으로, 데이터 처리 장치는 고해상도 단면도의 픽셀에 대한 z 축 좌표값을 미리 설정된 값만큼 변화시킬 수 있고, 이를 통해 변화되는 픽셀의 x축 좌표값의 변화량 및 y 축 좌표값의 변화량을 기반으로 기울기를 산출할 수 있다. 이하에서는, 도 10을 참조하여 상기에서 설명된 픽셀에 대한 정규 벡터 및 기울기를 산출하는 구체적인 방법이 설명될 수 있다.
도 10은 본 발명의 일 실시예에 따른 정규 벡터 및 기울기를 산출하기 위한 과정을 도시한 개념도이다.
도 10을 참조하면, 3D 모델(1) 상의 제1 지점(p)(5)에서의 정규 벡터 및 3D 모델 상의 제1 지점(p)(5)의 x-y 평면에 대한 기울기를 산출하는 과정을 확인할 수 있다. 도 10에 도시된 바와 같이 3D 모델(1) 상의 제1 지점(p)(5)에 대한 x축, y축 및 z축에 대한 좌표 값을 p(x,y,z)라 할 수 있다.
여기서, 3D 모델(1) 상의 제1 지점(p)(5)이 포함된 단면은 제1 단면도(5-1)와 같이 나타낼 수 있다. 즉, 제1 지점(p)(5)은 제1 단면도(5-1)에 투영된 3D 모델(1) 상에 존재하는 점(point)을 의미할 수 있다. 다시 말해, 제1 지점(p)(5)은 제1 단면도(5-1)에 매핑된 복수의 픽셀들(도 10에는 미도시 됨) 중 3D 모델(1)에 해당하는 픽셀 상에 존재하는 점을 의미할 수 있다. 이에 따라, 도 9에서는 제1 지점(p)(5)을 대신하여 픽셀에 대한 정규 벡터 및 기울기를 산출하는 것으로 설명되었다.
또한, 3D 모델(1) 상의 제2 지점(q)(6)은 제1 지점(p)(5)의 z축 좌표값을 미리 설정된 값(z)만큼 이동시킨 점을 의미할 수 있다. 또한, 3D 모델(1) 상의 제2 지점(q)(6)이 포함된 단면은 제2 단면도(6-1)와 같이 나타낼 수 있다. 즉, 제2 지점(q)(6)은 제2 단면도(6-1)에 투영된 3D 모델(1) 상에 존재하는 점을 의미할 수 있다. 다시 말해, 제2 지점(q)(6)은 제2 단면도(6-1)에 매핑된 복수의 픽셀들(도10에는 미도시 됨) 중 3D 모델(1)에 해당하는 픽셀 상에 존재하는 점을 의미할 수 있다.
먼저, 제1 지점(p)(5)의 정규 벡터는 x-y 평면 상에서 제1 지점(p)(5)과 접하는 벡터와 수직인 복수의 벡터들 중 3D 모델(1)의 중심 방향과 반대 방향으로 향하는 벡터인 정규 벡터
Figure pat00001
로 산출할 수 있다. 구체적으로, 정규 벡터
Figure pat00002
는 하기의 수학식 1과 같이 산출될 수 있다.
Figure pat00003
아울러, 제1 지점(p)(5)의 기울기는 제1 지점(p)(5) 및 제2 지점(q)(6) 간의 z축 좌표값의 변화량에 대한 x축 좌표값의 변화량 및 y축 좌표값의 변화량으로 산출할 수 있다. 구체적으로, 제1 지점(p)(5)에 대한 기울기는 하기의 수학식 2와 같이 산출될 수 있다.
Figure pat00004
다시, 도 4를 참조하면 데이터 처리 장치는 고해상도 단면도의 픽셀에 대한 정규 벡터 및 기울기를 기반으로 고해상도 단면도가 포함된 제1 단면도의 크기 변화를 나타내는 파라미터를 산출할 수 있다(S300). 구체적으로, 데이터 처리 장치는 고해상도 단면도의 픽셀에 대한 정규 벡터 및 기울기를 내적(dot product)하여 제1 단면도의 크기 변화를 나타내는 파라미터를 산출할 수 있다.
즉, 도 10을 참조하여 설명된 정규 벡터
Figure pat00005
및 기울기
Figure pat00006
를 내적하여 제1 단면도의 크기 변화를 나타내는 파라미터
Figure pat00007
를 산출할 수 있다. 구체적으로, 파라미터
Figure pat00008
는 하기의 수학식 3과 같이 산출될 수 있다.
Figure pat00009
여기서, 제1 단면도의 크기 변화를 나타내는 파라미터
Figure pat00010
의 값이 0보다 큰 경우, 3D 모델의 단면 크기가 제1 단면도를 중심으로 증가하고 있음을 의미할 수 잇다. 반면, 제1 단면도의 크기 변화를 나타내는 파라미터
Figure pat00011
의 값이 0보다 작은 경우, 3D 모델의 단면 크기가 제1 단면도를 중심으로 감소하고 있음을 의미할 수 있다.
이후, 데이터 처리 장치는 3D 모델의 2D 단면 데이터, 고해상도 단면도 및 파라미터를 기반으로 3D 모델의 3D 프린팅을 위한 데이터 패키지를 생성할 수 있다(S400). 즉, 데이터 패키지는 3D 모델의 2D 단면 데이터, 고해상도 단면도 및 파라미터를 포함할 수 있다.
이후, 데이터 처리 장치는 생성된 데이터 패키지를 3D 프린팅을 위한 3D 프린터로 전송할 수 있다(S500). 여기서, 데이터 처리 장치는 유선 또는 무선으로 3D 프린팅을 위한 3D 프린터와 연결될 수 있고, 이를 통해 데이터 패키지를 3D 프린터로 전송할 수 있다.
또한, 상기에서 설명된 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법에서 단계 S200 내지 S300은 2D 단면 데이터에 포함된 복수의 2D 단면도들에 대하여 반복적으로 수행될 수 있다.
즉, 상기에서는 데이터 처리 장치가 제1 단면도 대한 고해상도 단면도를 생성하고, 크기 변화를 나타내는 파라미터를 산출하는 것으로 설명되었다. 그러나, 이와 같은 과정은 2D 단면 데이터에 포함된 복수의 2D 단면도들에 대하여 모두 수행될 수 있는 것이다. 다시 말해, 데이터 처리 장치는 2D 단면 데이터에 포함된 복수의 2D 단면도들에 대한 고해상도 단면도의 생성하고, 크기 변화를 나타내는 파라미터를 산출하기 위해, 단계 S200 내지 S300을 반복적으로 수행할 수 있다.
상기에서, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법은 3D 프린터와 별도의 장치인 데이터 처리 장치에서 수행되는 것으로 설명되었으나, 이에 한정되는 것은 아니다. 즉, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 수행하는 데이터 처리 장치는 3D 프린팅을 수행하는 3D 프린터 내에 포함될 수도 있다. 이에 따라, 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법은 3D 프린터에서 수행될 수도 있다.
또한, 데이터 처리 장치와 연결된 3D 프린터는 본 발명의 일 실시예에 따른 3D 프린팅을 위한 데이터 처리 방법을 통해 생성된 데이터 패키지를 수신할 수 있다. 이후, 3D 프린터는 데이터 패키지에 포함된 3D 프린팅을 위한 3D 모델의 단면 데이터, 고해상도 단면도 및 파라미터를 획득할 수 있다. 이후, 3D 프린터는 3D 모델의 2D 단면 데이터, 고해상도 단면도 및 파라미터를 기반으로 3D 프린팅을 수행할 수 있다.
이때, 3D 프린터는 파라미터의 값에 따라 3D 모델의 단면의 크기가 증가하는지 감소하는지를 판단 가능하므로, 향상된 속도로 3D 프린팅을 수행할 수 있다. 또한, 3D 프린터는 고해상도 단면도를 기반으로 3D 프린팅을 수행하므로, 보다 정밀한 3D 모델을 출력할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (1)

  1. 3D 프린팅을 위한 데이터를 처리하는 장치에서 수행되는 3D 프린팅을 위한 데이터 처리 방법으로서,
    상기 3D 프린팅을 위해 수신되는 3D 모델(model) 데이터에 기초하여 3D 모델의 2D 단면 데이터를 생성하는 단계;
    상기 2D 단면 데이터에 포함된 복수의 2D 단면도들 중 하나인 제1 단면도 상으로 상기 3D 모델이 투영된 픽셀(pixel)에 대한 고해상도 단면도를 생성하는 단계;
    상기 픽셀의 정규 벡터(normal vector) 및 x-y 평면에 대한 기울기를 기반으로 상기 제1 단면도의 크기 변화를 나타내는 파라미터(parameter)를 산출하는 단계;
    상기 2D 단면 데이터, 상기 고해상도 단면도 및 상기 파라미터를 기반으로 상기 3D 모델의 3D 프린팅을 위한 데이터 패키지를 생성하는 단계; 및
    상기 생성된 데이터 패키지를 상기 3D 프린팅을 위한 3D 프린터로 전송하는 단계를 포함하는 3D 프린팅을 위한 데이터 처리 방법.
KR1020170001740A 2017-01-05 2017-01-05 3d 프린팅을 위한 데이터 처리 방법 및 장치 KR20180080786A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170001740A KR20180080786A (ko) 2017-01-05 2017-01-05 3d 프린팅을 위한 데이터 처리 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170001740A KR20180080786A (ko) 2017-01-05 2017-01-05 3d 프린팅을 위한 데이터 처리 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20180080786A true KR20180080786A (ko) 2018-07-13

Family

ID=62913727

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170001740A KR20180080786A (ko) 2017-01-05 2017-01-05 3d 프린팅을 위한 데이터 처리 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20180080786A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210046889A (ko) 2019-10-18 2021-04-29 경북대학교 산학협력단 의료 영상에 대한 3d 레벨 세트 분할 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210046889A (ko) 2019-10-18 2021-04-29 경북대학교 산학협력단 의료 영상에 대한 3d 레벨 세트 분할 방법 및 장치

Similar Documents

Publication Publication Date Title
US10417821B2 (en) Method of simplifying a geometry model
US9972128B2 (en) Methods and systems for generating polycubes and all-hexahedral meshes of an object
CN113094770B (zh) 图纸生成方法、装置、计算机设备和存储介质
US11544423B2 (en) Computer simulation of physical fluids on a mesh in an arbitrary coordinate system
KR20180008575A (ko) 정보 처리 장치, 방법, 및 프로그램
US20130226530A1 (en) Mesh generation system
US20160332385A1 (en) Apparatus and method for generating bitmap of 3-dimensional model
Grande Eulerian finite element methods for parabolic equations on moving surfaces
CN106503171B (zh) 一种矢量数据的处理方法及装置
KR20180080786A (ko) 3d 프린팅을 위한 데이터 처리 방법 및 장치
CN113034582A (zh) 位姿优化装置及方法、电子设备及计算机可读存储介质
US20180239855A1 (en) Structural analysis method and structural analysis apparatus
Li An anisotropic finite element method on polyhedral domains: interpolation error analysis
KR101359661B1 (ko) 삼각형 메쉬로 표현된 3차원 물체를 DoSurface 표현 방법으로 변환하는 시스템 및 그 방법
CN104850820A (zh) 一种脸部识别方法及装置
CN111951348A (zh) 确定框选区域的方法、装置及电子设备
US20230377265A1 (en) Systems for Efficiently Rendering Vector Objects
CN115909347A (zh) 仪表示数识别方法、装置、设备及介质
KR101122279B1 (ko) 베지어 곡선에 따른 오프셋 곡선을 생성하는 방법
JP5464671B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
CN108257079B (zh) 图形变换方法及装置
KR102551467B1 (ko) 깊이 맵 이미지 생성 방법 및 그를 위한 컴퓨팅 장치
CN112683216B (zh) 用于生成车辆长度信息的方法、装置、路侧设备和云控平台
JP6926394B2 (ja) 印刷装置及びプログラム
CN109324797B (zh) 一种桌面图标生成方法、计算机可读存储介质及终端设备