仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG...

55
工學碩士學位論文 비전정보와 캐드DB의 매칭을 통한 웹기반 금형판별 시스템 개발 Development of Web Based Die Discrimination System by Matching the Information of Vision with CAD Database 2005 2 仁荷大學校 大學院 機械工學科 ( 固體 및 生産工學專攻 )

Transcript of 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG...

Page 1: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

工學碩士學位論文

비전정보와 캐드DB의 매칭을 통한 웹기반 금형판별 시스템 개발

Development of Web Based Die Discrimination System by

Matching the Information of Vision with CAD Database

2005 年 2 月

仁荷大學校 大學院

機械工學科 ( 固體 및 生産工學專攻 )

金 世 原

Page 2: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

工學碩士學位論文

비전정보와 캐드DB의 매칭을 통한 웹기반 금형판별 시스템 개발

Development of Web Based Die Discrimination System by

Matching the Information of Vision with CAD Database

2005 年 2 月

指導敎授 趙 明 寓

이 論文을 碩士學位論文으로 提出함

仁荷大學校 大學院

機械工學科 ( 固體 및 生産工學專攻 )

金 世 原

Page 3: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

이 論文을 金世原의 碩士學位論文으로 認定함

2005 年 2 月

主審

副審

委員

Page 4: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

i

요 약 문

이 논문의 목적은 사출금형을 대상으로 분류가능한 특징을 UG API를 이용해

Database로 구축하였으며, 마찬가지로 원격지의 카메라를 통해 획득한 2D비전으로

얻은 형상정보에서도 분류가능한 특징을 추출하여 기존에 구축한 Database와

매칭시킴으로써 금형의 판별이 가능한 시스템을 개발하는 것이다.

1980년대부터 지금에 이르는 대다수의 금형 제조업체들은 특정 CNC머신에서

가공중인 대상물에 대한 정보를 확인하는데 여전히 서류를 통하거나 실제 현장으로

가서 확인하는 방식을 취하고 있다.

이에 금형판별의 구체적 기준을 제시하기 위한 방법으로 웹기반 하에서 UG

API로 얻어진 정보와 비전으로 얻은 화상정보를 이용한 매칭을 소개하고자 한다.

일반적으로 2D 비전 정보는 복잡한 계산을 해야 하는 3D 비전 정보보다 훨씬 적은

양의 정보로 이루어져 있으므로 웹기반에 보다 적합한 정보형태이다. 또한 정확한

치수의 인식이 아닌 매칭의 개념을 사용하므로 낮은 정밀도의 비전으로 얻은

형상정보로도 충분히 원하는 결과를 얻어낼 수 있다.

위와 같은 시스템을 이용하면 인터넷을 기반으로 원거리에서도 충분히 빠르고

효과적인 공정모니터링을 수행할 수 있을 것으로 기대되며, 최종적으로 실험을

통해 이 제안된 시스템의 실용성을 입증하고자 한다.

Page 5: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

ii

Abstract

In recent die industry, web-based production control system is applied widely because of the

improvement of IT technology. In result, many researches are published about remote

monitoring at a long distance.

The target of this study is to develop Die Discrimination System using web-based vision, and

CAD API when client discriminates die in process at a long distance. Special feature of this

system is to use 2D vision image and to match with Database. We can get discrimination result

enough to want with short time and a little low precision in web-monitoring by development of

this system.

In order to present the concrete standard of mold discrimination from remote, the matching of

web based will be introduced. Generally because 2D vision information is smaller than 3D

vision information to need complex calculation, 2D vision information is appropriate to web

based programming. And it is the matching and the accurate recognition, good result is expected

with the vision information of low resolution.

When it uses this system, quick and effective process monitoring can be accomplished in

internet from long distance. Finally the practicality of the proposed system will be verified by

test.

Page 6: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

iii

List of Figures and Tables

Fig. 1 Proposed Web-Based Matching System .........................6

Fig. 2 Flowchart of System........................................................7

Fig. 3 Graph of Signature Method............................................15

Fig. 4 Information of STEP file ................................................21

Fig. 5 The matching feature classification ..............................22

Fig. 6 Database of Microsoft Access .......................................23

Fig. 7 Webpage by ActiveX Control.........................................31

Fig. 8 Crop in the Webpage......................................................32

Fig. 9 Feature Information with matched.................................33

Fig. 10 Example of Die Model..................................................39

Table. 1 Recheck Result of Fig. 10(a) .....................................41

Table. 2 Area Ratio of Fig. 10(b) .............................................41

Table. 3 Around Length Ratio of Fig. 10(b).............................41

Page 7: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

iv

차 례

요 약 문 ........................................................................................................ i

Abstract ........................................................................................................ii

List of Figures and Tables..........................................................................iii

제 1 장 서 론............................................................................................. 1

1.1 연구배경 및 목적 .......................................................................... 1

1.2 연구 내용 ........................................................................................ 3

제 2 장 Vision System을 이용한 형상정보획득................................... 8

2.1 Vision System ................................................................................... 8

2.2 이미지 프로세스 ............................................................................ 9

2.2.1 Preprocessing 작업 ..............................................................10

2.2.2 Cleaning 작업 ....................................................................... 11

2.3 형상정보 획득 알고리즘 ............................................................ 11

제 3 장 UG API를 이용한 Database구성 ...........................................16

3.1 UG API를 이용한 형상정보 추출작업 .....................................16

3.2 Database .........................................................................................17

3.2.1 DAO (Data Access Object)...................................................18

Page 8: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

v

3.2.2 Database의 구성...................................................................18

3.3 Database를 이용한 Matching.....................................................19

제 4 장 웹을 이용한 디스플레이.........................................................24

4.1 TCP/IP와 Socket Interface ..........................................................24

4.1.1 TCP/IP ...................................................................................24

4.1.2 Socket Interface ....................................................................25

4.1.3 Socket Interface의 적용 ............................................................26

4.2 서버-클라이언트 구조와 ActiveX.............................................27

4.2.1 서버-클라이언트 구조 ........................................................27

4.2.1 ActiveX...................................................................................28

제 5 장 실험 결과와 고찰.....................................................................34

5.1 시스템 구현 ..................................................................................34

5.2 실험결과 분석 ..............................................................................35

제 6 장 결 론 .........................................................................................42

참고 문헌 ...................................................................................................44

Page 9: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

1

제 1 장 서 론

1.1 연구배경 및 목적

1980년대부터 대다수의 금형 제조업체들은 공정관리의 효율화를 추구하려는

노력을 해왔다. 그 노력의 결과로 많은 업체에서 E-Manufacturing을 도입하게

되었으며 이로 인해 작업자부터 설계자, 공정관리자, 소비자에 이르기까지 다양한

사람들에게 ERP(Enterprise Resource Planning)개념을 바탕으로 CAD/CAM/CAI

통합시스템을 포함한 전 공정의 총체적인 관리를 제공해줄 수 있게 되었다. [1, 2]

그러나 생산현장과의 연계성이 부족하여 대부분의 업체 작업장에서는 특정

CNC머신에서 가공중인 대상물에 대한 정보를 확인하는데 여전히 서류를 통하거나

실제 현장으로 가서 확인하는 방식을 취하고 있다. 이에 Kazuo Muto가 카메라를

설치하여 생산현장을 관리 감독하는 시스템[3]을 제안하였으나 이는 머신의

가공상태를 보여주기만 할 뿐 가공 대상물에 대한 정보는 확인할 수 없었다. 즉,

단순 모니터링만으로는 가공대상물에 대한 구체적 판별이 어렵기 때문이다. 그

밖에 비전의 3D 정보를 이용한 역공학 시스템[4]이 있지만 웹기반의 E-

Manufacturing을 구현하기에는 처리해야 할 데이터의 양이 너무 많아 적합하지

못하다.

본 연구에서는 금형판별의 구체적 기준을 제시하기 위한 방법으로 웹기반 하에서

UG API로 얻어진 정보와 비전으로 얻은 형상정보를 이용한 매칭을 소개하고자

Page 10: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

2

한다.

일반적으로 2D 비전 정보는 복잡한 계산을 해야 하는 3D 비전 정보보다 훨씬

적은 양의 계산을 필요로 하므로 웹기반의 E-Manufacturing에 보다 적합한

정보형태이다. 웹카메라와 같은 Vision sensor로부터 획득된 2D 정보는

Preprocessing과 Cleaning의 이미지 처리에 의해 형상정보를 얻어내기에 적합한

형태로 가공된다. Preprocessing작업은 Highpass filter와 Blurring Filter, Median filter,

Histogram Equalizer를 이용한 처리를 사용하였고, Cleaning 작업은 Blurring Filter,

이진화의 조합과 Dilation, Erosion의 조합을 사용하였다.

또한, 정확한 치수의 인식이 아닌 매칭의 개념을 사용하므로 낮은 정밀도의

비전센서로 획득한 형상정보로도 충분히 원하는 결과를 얻어낼 수 있다. 본

연구에서는 사출금형을 대상으로 분류 가능한 특징을 UG API를 이용해 Database로

구축하였으며, 마찬가지로 원격지의 카메라를 통해 획득한 2D 비전으로 얻은

형상정보에서도 분류가능한 특징을 추출하여 기존에 구축한 Database와

매칭시킴으로써 금형의 판별이 가능한 시스템을 제안하고 있다.

Fig. 1은 시스템의 적용실례를 도시하였다. 이와 같이 제안된 시스템을 이용하면

인터넷을 기반으로 원거리에서도 충분히 빠르고 효과적인 공정모니터링을 수행할

수 있을 것으로 사료된다. 최종적으로 한 대의 CNC Milling Machine에 공작물을

위치시키고, 비전시스템으로 원격지에서 이미지를 획득하여 특징형상을 추출하고

그것을 UG API를 이용해 구축된 Database와 매칭하여 그 결과를 확인하는 실험을

통해 웹기반 금형판별 시스템의 실용성을 입증하고자 한다.

Page 11: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

3

1.2 연구 내용

본 연구에서는 전술한 여러 가지 사항을 고려하여 CNC공작기계 상에서 Vision

System을 이용하여 가공중인 금형물체를 신속하게 판별하고, 작업자에게 현재

금형가공물체의 정보와 가공중의 상태를 제공할 수 있는 알고리즘과 운용방법을

제시하는 것을 목적으로 하여 연구를 수행하였다.

그러나 Vision System을 이용하는 경우 대상물과 카메라 사이의 거리, 각도,

조명의 종류와 세기, 방향 등과 같은 여러 가지 변화 요인들에 의해서 획득

데이터는 다수의 오차를 포함하게 된다. 그리고 이미지 정보는 카메라의 렌즈를

통하여 얻어지게 되는데, 이 과정에서 렌즈의 특성과 가공상태에 의해 영상의

왜곡이 발생하게 된다.

본 연구에서는 이러한 문제점들을 효과적으로 보정하여 일련의 이미지획득과정을

통하여 얻어지는 영상은 영구적으로 보존하고 사용하기 위하여 bmp형식의 파일로

저장을 하게 된다. bmp파일은 그래픽파일을 표현할 때 비트맵이라는 표현방식에

속하며 pixel들의 집합으로 구성되어 있고 사진과 같은 이미지에 유리하다.

이 bmp파일에서 효과적인 형상정보를 추출하고 획득된 정보를 특징형상의

형상정보로 사용하여 가공중인 CNC 공작기계 상에서 공작물의 판별을 할 수 있는

시스템과 방법들을 제시하였다. Fig. 2는 전체적인 시스템의 개요와 진행과정을

나타낸 것이다.

본 논문에서는 다음과 같은 진행과정에 의해 실험을 수행하였다.

단계 1, 실험에 사용할 모델인 각 UG파일들에 대해 Visual C++과 UG API로

작성된 프로그램을 적용하여 모델의 특징형상의 존재유무와 각 개수, 아울러

Page 12: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

4

넓이와 둘레길이 등의 형상정보들을 얻어낸다.

단계 2, 이 형상정보들을 정리하여 SQL언어를 쉽게 구현할 수 있도록 도와주는

Microsoft의 Access 프로그램을 사용해서 Database를 구축하여 서버 컴퓨터에

Database를 위치시킨다.

단계 3, CNC 공작기계상에 웹카메라를 설치하고 모재의 크기와 중심을 고려하여

황삭, 중삭, 정삭이 끝난 후 공작물을 카메라의 위치에 맞게 이송시킬 수 있도록 G-

code를 작성한다.

단계 4, 측정시 입력된 G-code에 의해 정해진 위치로 이동된 공작물의 획득된

이미지를 서버에 저장한 후 클라이언트에서 이미지 요청이 올 때까지 대기한다.

단계 5, 클라이언트에서 이미지에 대한 요청이 오면 그 획득된 이미지를

클라이언트로 전송하여 Crop할 위치를 지정하도록 한다.

단계 6, 서버는 클라이언트로부터 Crop을 위한 좌표를 획득하여 원영상에 대해

Crop을 수행하게 되고 Preprocessing을 거치게 한다. 즉, Highpass Filter, Blurring 및

Median Filter, Histogram Equalizer 등을 통하여 이미지를 이진화에 적합하도록 만들어

놓는다.

단계 7, Preprocessing을 거친 이미지는 이진화와 경계검출, 세선화를 수행한 후

Cleaning작업을 거치게 된다. 이 때 Blurring Filter 및 Dilation, Erosion 등을 사용하게

된다.

단계 8, Signature Method를 사용하여 각 특징형상의 형태와 넓이 등의 형상정보를

얻어내고, 이 형상정보를 단계 2에서 준비된 Database와 매칭시킨다.

단계 9, 이 때 Vision System에서 얻어진 형상정보는 모든 Database와 매칭을

수행하게 되며, 매칭결과가 1개이면 Recheck과정을, 매칭결과가 2개 이상이면

Page 13: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

5

매칭결과가 1개가 될 때까지 비율법을 적용하고, 결과가 1개가 되면 Recheck과정을

수행하게 된다.

단계 10, 매칭에 대한 결과를 클라이언트로 보내고 클라이언트는 이 결과를

실험자에게 보여주게 된다.

Page 14: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

6

Fig. 1 Proposed Web-Based Matching System

Page 15: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

7

Fig. 2 Flowchart of System

Page 16: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

8

제 2 장 Vision System을 이용한 형상정보획득

2.1 Vision System

비전 시스템은 크게 Digitizer, 라이브러리, 영상처리프로세서로 이루어진다. 현재

영상관련보드 제조업체들은 영상처리프로세서를 전담하는 영상처리보드와 그에

최적화된 Digitizer와 영상처리 함수가 내장된 라이브러리를 제공하고 있다. 이런

Digitizer들은 아주 높은 해상도를 갖고 있고, 라이브러리 또한 각각의

영상처리보드의 기능을 완벽히 발휘할 수 있도록 만들어져 있다. 그러나

영상관련보드는 상당히 고가이며, 라이브러리와 Digitizer 또한 매우 고가이기

때문에 시스템 구축에 많은 비용이 소요된다.

저가에 이러한 시스템을 구성하기 위해서 영상관련보드와 그에 부속된 Digitizer와

라이브러리를 사용하지 않고 시스템을 구성할 수 있는 방법 중에 공개

라이브러리와 웹카메라를 이용하는 방법이 있다. 공개 라이브러리를 이용하면

CPU가 영상처리보드를 대신하게 된다. 물론 공개 라이브러리를 이용한

어플리케이션은 전용 영상처리보드를 이용한 어플리케이션보다 속도가 느려지기

때문에 크기가 아주 큰 파일을 조작할 때 곤란을 겪을 수 있지만 실험에 의해

확인한 결과 800 X 600의 사이즈까지는 크게 문제가 되지 않는다.

카메라로부터 들어온 영상이미지를 다루기 위해서 만들어진 OpenCV는 여러

개발자들이 참여해서 만들어가는 비전관련 공개 라이브러리이며, 영상이미지를

픽셀단위가 아닌 이미지 단위로 쉽게 조작할 수 있는 함수가 포함되어 있다. 또

Page 17: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

9

다른 라이브러리로 IPL라이브러리가 있는데 인텔사의 이미지처리를 위한

라이브러리로서 자사의 CPU명령어들을 이용해서 빠르게 이미지를 처리할 수

있도록 고안되었다. OpenCV라이브러리도 IPL라이브러리를 확장하여 만들어진

라이브러리라 할 수 있다.

즉, 이 OpenCV라이브러리를 이용하면 특별한 영상보드가 없이도 이미지 단위로

영상처리가 가능하다. 또한 OpenCV는 대부분의 웹카메라를 바로 인식, 지원할 수

있기 때문에 저가에 시스템을 구성할 수 있게 되며 비전 시스템의 전체 가격은

웹카메라의 가격만으로 줄어들게 된다. Vision System을 구성하기 위해 공작물이

올려진 공작기계 상에 Fig. 3, Fig. 4와 같이 웹카메라를 설치한다.

2.2 이미지 프로세스

어떤 영상을 얻더라도 가장 좋은 형상정보를 획득하기 위해 Preprocessing과

Cleaning에 중점을 두어 설계하였다. Preprocessing은 형상정보 추출을 위한 이미지

처리 이전에 비전 시스템에서 얻은 이미지의 원본을 가공하는 것을 말하며 주로

히스토그램 처리와 같이 형상정보 추출에 적합한 형태로 변경시키는 것을 말한다.

[5, 6, 7]

이때 왜곡 등을 줄이고 중요한 형상은 증가시켜서 이미지 데이터의 질을

개선하는 기능을 한다. Cleaning은 형상정보 추출을 위해 이미지 처리를 한 후에

남아있는 Noise를 제거할 수 있는 기법을 말한다. 어떤 영상에 Noise가 있다고 할

때, 그 영상을 보고 Noise가 있음을 알 수 있는 것은 Noise의 농도와 그 주변

농도의 급격한 농도차가 있다는 점이다.

Page 18: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

10

이런 Noise들을 제거하기 위해 여러 가지 필터링과 방법이 사용되며 이때

Noise가 제거된다는 것은 부각시키고자 하는 중요한 형상에 손상을 줄 수도 있다는

가능성 때문에 그 적용에 매우 신중을 기해야 한다. 그래서 Noise제거 필터링은

특징 형상에 대해서는 둔감하고, Noise에는 민감해야 한다는 요구조건이 있다.

2.2.1 Preprocessing 작업

획득된 이미지는 Preprocessing 작업을 거치게 되는데, Highpass Filter와 Blurring

Filter, Median Filter, 그리고 Histogram Equalizer를 이용한 조작을 사용하였다. 각

필터들은 최대한 원본의 이미지를 손상시키지 않고 특징 형상을 부각시킬 수

있도록 선정되었다.

Highpass Filter는 이미지의 고주파 강화 필터로서 영상의 고주파 성분을 강화시켜

영상을 Sharping하는 효과를 가져온다. 이는 Blurring 및 Median Filter를 수행할 때

좀더 좋은 적용결과를 나타내기 위해 사용된다. Blurring Filter는 Noise의 명도값과 그

주변 명도값의 급격한 차이가 있다는 성질을 이용하여 주변의 화소값의 평균을 그

화소의 값과 교환하여 Noise제거를 수행한다. Median Filter는 어떤 화소 주변

영역내의 화소농도를 순서대로 일렬로 배열시켜 놓고 그 화소농도의 중간값을

구하여 원하는 화소의 농도로 처리하는 것이다. Median Filter의 장점은 에지의

보존에 있어서 Blurring Filter보다 훨씬 좋은 결과를 보여준다. Blurring Filter의 경우

Noise 성분도 평균의 계산에 포함되므로 필터적용 결과가 Noise의 영향을 받지만,

Median Filter의 경우는 Noise 성분이 선택되는 경우가 드물고 그 결과에 그다지

영향을 받지 않는다는 것이 특징이다. Histogram Equalizer는 명암값 분포가 빈약해진

영상을 0~255까지의 모든 값에 골고루 분포하도록 히스토그램으로 재생성하여

Page 19: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

11

이진화가 더욱 수월하게 진행되도록 한다.

2.2.2 Cleaning 작업

Preprocessing 작업이 끝난 후 이진화 작업을 수행하면 그때부터 Cleaning 작업을

수행하게 된다. Cleaning작업은 이미 이진화가 수행된 후에 작업하기 때문에 흑백의

두 색으로 만들어진 영상을 사용하지만, Blurring과 같은 필터는 주변화소의

평균값을 그 화소의 농도값과 비교하는 것이므로 0, 255로 이루어진 이미지도

0~255의 분포를 가진 이미지로 변경시킬 수 있다.

Blurring Filter와 이진화의 조합이나 Dilation, Erosion의 조합을 사용한 후 하나의

연결된 둘레가 일정길이 이하인 것들은 Noise로 간주하여 삭제하는 알고리즘을

적용한다. Blurring Filter와 이진화의 조합은 큰 형상의 가장자리를 다듬는 효과가

있으며 Dilation과 Erosion의 조합은 작은 Noise를 삭제하거나 좁은 틈을

삭제시켜주는 역할을 수행한다.

2.3 형상정보 획득 알고리즘

앞의 과정을 거친 영상이미지는 이 이미지에 에지검출 알고리즘을 적용하고

세선화 작업을 수행하면 두께가 1픽셀인 경계선 정보를 얻게 된다. 외곽선만 남게

된 이미지에서 각 특징 형상들에 대해 Signature Method를 사용하여 정점의 좌표 및

중심과 둘레의 길이, 면적을 산출한다. [8]

Signature Method는 Chain code와 비슷하게 2차원 경계점들에 대한 정보를 Fig. 4와

Page 20: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

12

같이 1차원 함수로 나타낼 수 있으며, 어떤 특징형상에 대해서 무게중심으로부터

경계선까지의 거리를 그래프로 표현하는 방법을 이용한다. 이 Signature Method를

이용하면 화면상의 도형의 특성을 뚜렷이 나타낼 수 있다. 본 논문에서는 각

형상들에 대해서 Chain code에 의해 경계선들의 위치를 파악하고, 각도를 θ값으로,

무게중심에서부터 경계선까지의 거리를 r(θ)값으로 하여 2차원 외곽선 정보를

1차원 정보로 표현하였다.

이 정보를 분석하여 r(θ)의 길이변화를 조사하면 그 변화량이 +값에서 –값으로

변화하는 곳을 계산하여 정점의 좌표로 나타낼 수 있다. 이런 정점의 개수를

확인함으로써 그 특징형상이 어떤 형태인지 아주 쉽게 알아낼 수 있는 장점이 있다.

Page 21: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

13

Fig. 3 Vision System (Front View)

웹카메라

금형

Page 22: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

14

Fig. 4 Vision System (Top View)

웹카메라

금형

Page 23: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

15

Fig. 5 Graph of Signature Method

Page 24: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

16

제 3 장 UG API를 이용한 Database구성

모델링 파일로부터 형상에 대한 정보를 얻는 대상과 방법은 여러 가지가 있다.

몇 가지 예를 들자면 각주형 부품에 대하여 평면도 그래프를 이용한 2차원적인

특징형상의 획득을 시도한 경우가 있고, [9] Fig. 6과 같이 STEP(Standard for the

Exchange of Product Model Data) 정보를 이용해서 특징형상, 가공절차, 가공방법,

절삭공구, 가공기술, 형상정보 등을 얻는 방법이 있다. 실제로 K-STEP 센터에서는

ISO 14649등의 제품정보호환 모델을 기반으로 공정계획 정보를 새롭게 정의하고

있다. 여기서 공정계획 정보는 가공절차, 가공방법, 공구정보, 형사정보 등이며 이들

정보는 STEP에서 사용하고 있는 정보표현 방법을 따른다. 또한 2차원의 도면에서

3차원의 특징형상을 인식해 내기 위해 패턴 인식을 이용한 경우가 있으며, [10]

CAD/CAM 통합시스템을 위해 모델링 파일에서 특징형상을 자동으로 추출하는

방법도 연구되고 있다. [11, 12, 13]

본 논문에서는 Unigraphics파일을 대상으로 하여 Unigraphics NX 1.0의

응용프로그램 인터페이스인 UG-API를 이용해 오브젝트에 대한 정보를 획득하는

모듈을 개발하였다. 이 모듈을 이용하여 획득된 정보들은 특징형상에 따라

Microsoft Access에 적합한 Database형태로 정리되어 입력되며, 특징형상의 1차적

정보와 2차적 정보로 나뉘어 저장된다.

3.1 UG API를 이용한 형상정보 추출작업

Page 25: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

17

UG API의 용도는 Microsoft Visual C++이나 Microsoft Visual Basic과 같은

프로그래밍 툴 기반에서 Unigraphics의 각종 기능들을 자동으로 수행할 수 있는

프로그램을 만들기 위해 프로그래밍 언어에 따라 함수를 제공하는 패키지이다. 본

논문에서는 Visual C++기반에서 Unigraphics NX 1.0의 UG API를 사용하여 Fig. 7의

데이터베이스 규칙에 따라 특징형상을 분류하고 각 오브젝트의 길이와 정점의 위치,

폐곡선인 경우 넓이와 둘레의 길이, 중심의 좌표를 얻어낼 수 있도록 하였다.

3.2 Database

Database는 컴퓨터에서 취급하는 데이터의 구조 및 처리의 기술을 추상화하여

프로그램 작성 및 데이터의 보존을 쉽게 하기 위한 기본 소프트웨어이며

데이터베이스 관리시스템 (DBMS)이라고도 한다. 컴퓨터에서 취급하는 데이터는

독자적인 계층구조를 가지고 있다. 그런데 이러한 데이터가 컴퓨터의 기억매체에서

어떻게 배치되고, 어떻게 취급되는가 하는 것은 프로그램에 의해서 결정된다.

대부분의 데이터베이스 관리시스템은 데이터 구조의 기술, 그 중에서 추출하는

부분의 기술을 추상화하고, 총합적인 데이터를 포함함으로써 한 개의 데이터

축적을 모든 처리에 공통으로 이용할 수 있도록 고안되었다. 그리고

데이터베이스를 공용하는 각 시스템이 동시에 실행되는 경우에 데이터의 보호,

갱신의 타이밍 등의 관리를 한다. 데이터베이스 관리시스템은 이와 같이 데이터의

통일적 관리와 처리기술의 고급화를 실현하고, 프로그램의 개발, 보전의 부담을

경감하는 데 기반이 되고 있다.

Database 파일을 설계할 때, 고려해야 할 사항들은 여러 가지가 있으며 각각의

Page 26: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

18

설계단계에 맞게 작성된 Database가 유효하게 설계되어야 한다. 본 연구에서 사용한

DAO와 구성에 대해서 간단히 설명하면 다음과 같다.

3.2.1 DAO (Data Access Object)

Stand Alone System에서 용량이 큰 ODBC 엔진을 사용할 경우 기존의 단순한 트리

구조의 데이터베이스에 비해서 성능이 떨어지게 되며 Stand Alone 컴퓨터에서의

환경에 맞게 작은 Database 엔진이 필요하다. 이러한 사항을 고려하여 만든 것이

DAO(Data Access Object)이다.

ODBC와 DAO는 매우 다른 구조로 되어있다. DAO는 OLE객체이고 ODBC는

DLL에 의한 데이터 소스의 연결이다. 따라서 용량은 ODBC가 크지만 DAO가

ODBC보다 더욱 강력하고 커다란 개념이라고 할 수 있다. 이것은 직접 실제

데이터를 액세스할 수 있고 여러 개의 테이블을 액세스할 수 있기 대문이다.

따라서 본 연구에서는 DAO엔진을 적용하여 시스템을 구성하였다. 또한 PC상에서

개발하는 것이기 때문에 ODBC보다 더욱 효율적이다. Database는 PC버전의

DAO시스템을 지원하는 MS-Access를 사용하였다.

3.2.2 Database의 구성

위와 같이 얻어진 형상에 대한 정보들은 Database에 저장되는데 아래의 Fig. 8과

같이 MS-Access로 만들어진 이 Database는 Main-Database와 Sub-Database로 나뉘어져

Page 27: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

19

저장되게 된다.

Main-Database는 각 금형에 대해 특징형상의 존재여부, 개수가 입력되어 있다. 이

Main-Database는 매칭시 특징형상의 구성이 확연히 다른 금형들을 배제시켜주는

역할을 한다.

Sub-Database는 Main-Database에서 걸러진 금형들을 다시 매칭시키기 위한 각

특징형상의 넓이와 둘레길이, 중심좌표의 구체적 정보로 이루어져 있다. 이 넓이와

둘레길이, 중심좌표와 앞 장에서 설명한 Vision에서 얻어진 특징형상들의 정보를

SQL언어를 이용하여 매칭하는 것이다.

3.3 Database를 이용한 Matching

전술한 바와 같이 본 연구에서 구축된 Database는 크게 2개의 Database로

이루어져 있다. 먼저 Main-Database는 한 개만 존재하며 모든 금형들에 대해 각

특징형상의 존재유무 및 개수에 대한 정보를 담고 있고, Sub-Database는 각

금형들마다 한 개씩 배당되어 있고 특징형상의 넓이와 둘레길이, 중심좌표가

저장되어 있다.

앞에서 얻은 이미지에서 받은 형상정보와 매칭을 하는 과정에 있어서 통상

현장에서는 카메라 높이의 사전정보가 없는 관계로 그 넓이나 둘레의 길이가

정확히 일치하는 값을 얻기가 어렵다. 따라서 본 연구에서는 비율법을 사용하였다.

1차적으로 Main-Database에 의해 특징형상의 개수가 일치하는 Sub-Database가

선정되게 된다. 2차적으로 Sub-Database의 특징형상과 비전 시스템에 의해 얻어진

Page 28: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

20

특징형상의 두 형상정보 그룹에 대해, 넓이와 둘레 길이에 따라 각각의

특징형상끼리의 비율을 산출한다. 그리고 Database에서의 비율과 비전 시스템에서의

비율을 서로 비교한다. 마지막에 비교한 수치가 Recheck결과이며 백분율로

나타내게 된다. Recheck결과와 Ratio의 일치성은 비슷한 개념이며 매칭한계를

80%~120%로 한정했다.

Page 29: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

21

Fig. 6 Information of STEP file

Page 30: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

22

Fig. 7 The Matching Feature Classification

Page 31: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

23

Fig. 8 Database of Microsoft Access

Page 32: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

24

제 4 장 웹을 이용한 디스플레이

원격지에서 데이터를 주고받을 수 있는 방법은 여러 방법이 있다. 그 중 소켓

통신은 TCP/IP Protocol 기반의 네트워크 프로그래밍을 위하여 만들어진 API이다.

웹(TCP/IP Protocol)을 이용한 공정관리 시스템에 대해 많은 연구가 이루어지고

있으며, [14] 본 연구에서는 소켓 인터페이스를 이용한 서버-클라이언트 네트워크를

구축하였다.

4.1 TCP/IP와 Socket Interface

4.1.1 TCP/IP

TCP/IP는 ISO나 CCITT와 같은 기구의 표준안에 따라 만들어진 Protocol은 아니다.

그러나 TCP는 이들 표준안의 트랜스포트 층과 유사한 Protocol이며 IP는 네트워크

계층과 유사하다. 나머지 상위 Protocol인 세션, 프레젠테이션, 응용계층을 구현하는

것은 응용 Protocol 개발자의 몫이다. 물론 telnet이나 ftp와 같은 인터넷 표준

Protocol이 있으나 TCP/IP를 기반으로 하는 응용 프로그램을 작성하는 가능성은

무궁무진하다.

TCP/IP 프로그래밍을 위해 BSD 계열이나 시스템 V 계열의 UNIX 시스템에서

제공해 주는 프로그래밍 인터페이스로는 크게 세가지로 들 수 있다. TLI 및 XTI,

Page 33: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

25

RPC/XDR, 그리고 소켓 인터페이스이다.

4.1.2 Socket Interface

UNIX 시스템에서 처음으로 4.2BSD에서 프로세스간 통신을 위하여 소켓

인터페이스를 소개하였다. 여기에서 TCP/IP 인터페이스와 함께 UNIX 도메인

TCP/IP가 포함되었다. TCP/IP는 일반적인 통신망 프로그래밍 환경을 제공하므로

서로 다른 컴퓨터상의 두 프로세스 사이에 통신이 이루 어지는 반면 UNIX 도메인

TCP/IP는 통신망에서의 프로그래밍은 블가능하고 하나의 커널을 공유하는

프로세스간에만 통신이 가능한 인터페이스 방법이다.

그 후 4.3BSD에서는 TCP/IP와 함께 XNS(Xerox Network System)라는 Protocol을

소켓 인터페이스에 추가하였다. XNS는 제록스사에서 70년도에 자신의 사무용

상품과 컴퓨터 시스템을 통합시키기 위하여 개발한 통신 아키텍처이며 개방형

시스템이다. XNS를 개방형 시스템이라고 하는 이유는 제록스사가 이 Protocol을

공개했으며 다른 회사에서도 XNS 하드웨어와 소프트웨어를 생산하고 있기

때문이다. XNS는 대체로 TCP/IP와 비슷하기는 하지만 TCP/IP와 동일한 것은 아니다.

소켓 인터페이스는 아직 어떤 기관에 의해서도 표준화된 적은 없지만 산업계의

표준이라 할 만큼 소켓 인터페이스를 사용하는 소프트웨어들이 많다. 그 중 몇

가지 유명한 소프트웨어를 소개해 보겠다.

X 윈도우는 구현에 있어서 클라이언트와 서버로 구성되는데 두 프로세스간

통신은 통신 프로세스를 사용한다. 이 때 사용되는 통신 Protocol이 바로 TCP/IP이다.

썬 마이크로 시스템의 NFS 또한 TCP/IP의 상위 계층인 RPC(Remote Procedure

Page 34: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

26

Call)을 사용하여 구현되었다. OSF(Open System Foundation)의 DCE(Distributed

Computing Environment)또한 소켓 인터페이스로 TCP/IP를 사용한다. 이와 같이

TCP/IP는 많은 소프트웨어에서 활용되고 있다. 그 이유는 소켓 인터페이스가

이해하기 쉽도록 UNIX 시스템에 구현되어 있기 때문이다. 4.4BSD에서는

소켓인터페이스를 사용하여 ISO Protocol까지도 사용할 수 있을 전망이다.

4.1.3 Socket Interface의 적용

이 시스템에서 Socket 통신은 전부 세 번 발생된다.

첫째로 클라이언트 측에서 서버 측의 공작기계에 설치된 웹카메라의 이미지를

요청한다. 서버 측이 요청에 의해 저장된 이미지를 전송해 주면 클라이언트

측에서는 그 이미지를 ActiveX로 만들어진 클라이언트 프로그램에 디스플레이하게

된다.

둘째로 클라이언트 측이 선택한 Crop된 부분의 좌표가 서버 측으로 전송된다.

서버 측에서는 수신 받은 좌표를 이용하여 웹카메라의 이미지를 Crop하고 Vision

System의 이미지 프로세싱 및 특징형상 정보를 얻게 된다. 이 정보를 이용하여 UG-

API로 구축되어 있던 Database와 매칭을 수행하며 가장 적합한 금형을 선택하게

된다.

셋째로 서버 측에서 클라이언트 측에 매칭의 결과에 의해 선택된 금형에 대한

정보를 전송하게 되면 클라이언트는 이 정보를 디스플레이하고 Socket 통신은

종료된다.

Page 35: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

27

4.2 서버-클라이언트 구조와 ActiveX

4.2.1 서버-클라이언트 구조

웹을 이용한 디스플레이를 이용하기 위해 서버-클라이언트 구조를 이용하였고,

데이터의 양이 적을 때 적합하며, 메시지 송수신이 원활한 Socket 통신을 기반으로

데이터 송수신부를 구성하였으며, 클라이언트 파트는 근래 웹에서 많이 이용되고

있는 ActiveX Control을 사용하여 웹에서 인증을 받고 설치하도록 하였다.

Computer science에서 서버의 의미는 두 가지가 있다. 하나는 서비스를 제공하는

프로그램(software)을 가리키고 다른 하나는 서비스를 제공하는 컴퓨터를 가리킨다.

프로그램으로서의 서버는 다른 프로그램들에게 서비스를 제공하는 프로그램이다.

여기서 다른 프로그램들은 보통 네트워크로 연결되어 서버와 대화하는

프로그램들로서 클라이언트라고 한다. 대표적인 서버 프로그램들로는 DNS, FTP

server, HTTP server(Web server), NNTP server(news server)등이 있다. 이에 대한

클라이언트 프로그램들의 예를 들자면 FTP client, Web browser, news reader등이 있다.

하드웨어로서의 서버는 네트워크로 연결된 다른 컴퓨터들에게 서비스를 제공하는

컴퓨터를 말한다. 물론 이 컴퓨터가 서버 기능을 할 수 있는 것은 이 컴퓨터에서

서버 프로그램이 운용되고 있기 때문이다. 간단히 말하면 어떤 컴퓨터가 서버

프로그램을 운용하고 있다면 컴퓨터의 사양에 상관없이 서버라고 할 수 있다.

하지만 제대로 된 서버의 역할을 하자면 일단 네트워크에 항시 연결되어 있어야

하고 여러 클라이언트들이 접속하였을 때의 부하를 감당할만한 용량이 충분해야

한다.

Page 36: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

28

본 논문에서 구현된 시스템 중 웹을 이용한 디스플레이와 피드백을 위한

시스템은 서버-클라이언트 구조로 구성 되어있다. 여기서 서버-클라이언트라 함은

“분산된 시스템 처리 환경 하에서 상호 협력적으로 운용되는 작업 형태”를

의미한다. 호스트 측에만 집중적으로 IO가 발생하게 되는 부하를 방지하기 위해

클라이언트 측의 리소스를 보다 효율적으로 이용함으로써 전체 네트워크의

성능(performance)을 향상시키고자 한 것이 바로 서버-클라이언트의 개념이다.

4.2.1 ActiveX

ActiveX 개발키트는 인터넷 애플리케이션과 컨텐트의 개발을 촉진시키기 위해

마이크로소프트에서 소개하는 다양한 기술들을 포함하고 있다. 이 개발키트의 주요

구성 요소 중 하나는 예전에 “스위퍼”라는 코드명을 갖고 있던 ActiveX 기술인데,

이 기술은 마이크로소프트 인터넷 클라이언트 플랫폼을 절충시킨 것이라 할 수

있다.

주로 웹 저작자나 개발자로 하여금 차세대 쌍방향 대화식의 웹 페이지나

애플리케이션을 제작할 수 있는 기능을 제공하는데 인터넷 익스플로러 3.0부터

전격적으로 지원되기 시작하였다. ActiveX 서버 구성요소 ISAPI(the Internet Server

API)는 웹 마스터와 개발자에게 빠르고 향상된 방법으로 웹 서버를 확장할 수 있게

해준다. 또한, ActiveX 개발키트에는 개발자들을 위한 준비 단계의 인터넷

익스플로러가 포함되어 있다.

전반적인 ActiveX의 특징은 앞서 언급한 바와 같이 다양한 기능들을 포함하고

있다고 할 수 있다. 기존의 자바 및 자바 스크립트를 대신하기 위한 Microsoft Visual

Basic 지원 기능 및 VBScript의 지원이 그러하고, 넷스케이프 서버를 겨냥한 Internet

Page 37: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

29

Information Server 지원 기능이 그러하다.

기존의 수많은 윈도우용 프로그램들을 웹 페이지에서 그대로 실행시킬 수 있을

뿐만 아니라, 개발자의 측면에 있어서도 기존의 모든 개발용 툴들을 그대로 사용할

수 있고, 일단 다운로드 받은 OLE 컨트롤들을 다른 애플리케이션에서도 사용할 수

있다는 것 또한 장점이다.

ActiveX가 발표되면서 일반 사용자들에게는 잘 알려지지 않은 ActiveVRML

규약도 발표돼 VRML의 개발자들을 놀라게 하고 있다. ActiveVRML (AVRML)은

기존의 VRML에 VBScript가 포함돼 모든 ActiveX 규약과 호환될 뿐 아니라 모든

이벤트 중심의 시뮬레이션을 프로그래밍 언어를 통해 제어할 수 있는 멀티미디어

엔진이라 할 수 있다. 자바와 VRML이 결합된 VRML 1.1 규약을 능가할만한 모듈별

애니메이션, Parameter를 통한 모든 애니메이션의 제어, 이름을 통한 애니메이션의

제어 등이 AVRML을 통해 지원된다.

ActiveX Control의 가장 큰 장점은 임의의 ActiveX 컨트롤을 설치하면 웹

브라우저와 워드 프로세서와 그래픽 에디터 등이 하나로 통합되어 사용할 수 있게

되고 필요시 자동으로 다운로드되어 설치된다는 것이다.

Page 38: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

30

Fig. 9 Communication with Socket Interface

Page 39: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

31

Fig. 10 Webpage with ActiveX Control

Page 40: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

32

Fig. 11 Crop Process in the Webpage

Page 41: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

33

Fig. 12 Feature Information with Matched

Page 42: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

34

제 5 장 실험 결과와 고찰

5.1 시스템 구현

본 연구에서 제시한 금형판별 시스템은 설치의 번거로움을 없애고 새로운 장비

구입의 부담을 줄이기 위해 기존의 하드웨어와 소프트웨어를 사용하였으며 그

환경은 Table. 1과 같다.

이 시스템을 이용하여 이미지에서 얻어낸 형상정보가 UG-API로 구축된 Main-

Database, Sub-Database에서 어느 정도의 정확도로 매칭되는지 확인하였다.

우선 클라이언트 측은 서버 측에서 웹카메라의 영상을 전송하도록 요청한다.

이때 황삭, 중삭, 정삭이 끝난 후 공작물의 이미지를 획득하도록 미리 입력된 G-

code에 의해 CNC Milling Machine은 가공물의 좌표를 이미지가 획득되기 쉬운

좌표로 이송시켜 이미지를 획득한다. 서버 측에서는 이렇게 획득한 이미지를

클라이언트 측에 전송한다.

클라이언트 측은 전송되어온 영상에서 베드부분을 제외한 금형부분만을 선택하여

그 좌표를 서버 측에 전송한다. 이때 서버 측은 클라이언트 측으로 보내준 원본

이미지에서 클라이언트 측이 보낸 좌표에 의해 지정된 부분만을 잘라내어 이미지

프로세싱을 수행하게 된다.

이미지 프로세싱과 특징형상의 형상정보 획득 알고리즘에 의해 형상정보를

구하면 미리 만들어 두었던 Main-Database, Sub-Database와 매칭될 폴더에 이

형상정보를 저장하게 된다.

Page 43: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

35

먼저 Main-Database에서 각 특징형상의 존재유무 및 개수에 대하여 매칭을

수행하면 그에 따른 후보가 될 Database가 선정되고 Sub-Database에서의 매칭에

의해 최종적으로 1개의 Database만이 선택된다.

이때, 이미지에서 받은 형상정보와 매칭을 하는 과정에서 통상 현장에서는

카메라 높이의 사전정보가 없는 관계로 그 넓이나 둘레의 길이가 정확히 일치하는

값을 얻기가 어렵다. 그래서 본 연구에서는 비율법을 사용하였다.

우선 Database의 특징형상과 Vision 시스템에 의해 얻어진 특징형상의 두

형상정보 그룹에 대해, 넓이와 둘레 길이에 따라 각각의 특징형상끼리의 비율을

구해놓는다. 그리고 Database에서의 비율과 Vision 시스템에서의 비율을 서로

비교한다. 마지막에 비교한 수치가 Recheck결과이며 백분율로 나타내게 된다.

Recheck결과와 Ratio의 일치성은 비슷한 개념이며, 매칭한계를 80%~120%로

한정지어 실험을 하였다.

5.2 실험결과 분석

이 시스템의 검증을 위해 Fig. 13와 같이 4개의 시편을 설계, 제작하고 UG API를

이용하여 Fig. 14과 같은 형상정보를 추출하여 MS-Access로 Database를 구축하였다.

그 중 Fig. 13(a)와 Fig. 13(b)의 공작물을 대상으로 금형판별 시스템을 적용하였으며,

그에 대한 분석은 다음과 같다.

우선 Fig. 13(a)의 Main-Database와의 매칭 과정에서 가장 외곽의 사각형을 제외한

원 1개, 사각형 2개와 일치되는 Database를 찾는다. 검색결과 Database1이

검색되었으며, 검색결과가 한 개밖에 없으므로 Sub-Database의 검색은 생략되고

Page 44: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

36

최종 Recheck과정을 거친다. 그 결과는 Table. 2와 같다.

Table. 2의 넓이에 관한 정보에서 세 가지 특징형상의 Recheck결과가 99.11%,

115.43%, 116.46%를 나타내고 있다. 이는 원과 한 개의 사각형은 서로 비슷한

높이인데 반해 나머지 사각형은 높이차이가 많이 나기 때문에 큰 오차가 발생한

것으로 사료된다. 또한 그 나머지 사각형은 3차원적으로 pocket의 형태이기 때문에

이미지 상에서 그림자를 잘못 인식하여 그 넓이가 작아진 것이다.

Table. 2의 둘레길이 정보에서는 세 가지 특징형상의 Recheck결과가 105.48%,

113.80%, 107.89%임을 확인할 수 있다. 둘레길이 정보는 넓이 정보보다 수식적으로

높이에 영향을 적게 받기 때문에 넓이에 비해 크지 않은 오차를 갖고 있다.

다음 Fig. 13(b)의 경우 Main-Database와의 매칭 과정은 이미지에서 받은

형상정보인 원의 개수 1개, 사각형의 개수 1개와 일치되는 Database를 검색하는

것이다. 검색결과 Database2와 Database4가 검색되었으며, Database2와 Database4는

Sub-Database 검색의 대상이 된다.

Database2와 Database4는 각각 Sub-Database에 자신의 특징형상의 형상 정보를

갖고 있다. 이미지에서 얻어진 두 개의 특징형상 사이의 비율을 구하고, Sub-

Database에서 두 개의 오브젝트 사이의 비율을 구하여 매칭되는 것이 있는지

확인한다.

공작물 Fig. 13(b)의 두 특징형상의 넓이의 비율과 둘레 길이의 비율은 Table. 3,

Table. 4와 같다.

Table. 3에서 보면 원과 사각형의 넓이의 비율이 실험값은 45.2%, Database2는

44.2%, Database4는 123.6%가 됨을 보여주고 있다. 이때 Ratio의 유사성에서

실험값과 102.2%의 일치도를 갖는 Database2가 36.8%의 일치도인 Database4보다

일치 가능성이 높다.

Page 45: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

37

Table. 4에서 둘레길이 정보를 확인해 보면, 원과 사각형의 둘레길이의 비율이

실험값은 62.8%, Database2는 58.9%, Database4는 98.17%가 됨을 알 수 있다. 역시

Ratio의 유사성 측면에서 봤을 때 실험값과 106.7%의 일치도를 갖는 Database2가

64.0%의 일치도를 갖는 Database4보다 일치가능성이 높다.

이로써 Ratio의 일치성에서 둘 다 90%이상 110% 미만인 Database2가 Fig. 13(b)와

매칭이 됨을 알 수 있다.

Page 46: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

38

Table. 1 Environment of Developed System

Page 47: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

39

Fig. 13 Example of Die Model

Page 48: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

40

Fig. 14 Classification of Feature for Matching

Page 49: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

41

Table. 2 Recheck Result of Fig. 13(a)

Table. 3 Area Ratio of Fig. 13(b)

Table. 4 Around Length Ratio of Fig. 13(b)

Page 50: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

42

제 6 장 결 론

본 논문에서는 원격지에서의 CNC 공작기계 상에서 비전시스템과 기존 구축된

형상정보 Database를 매칭하여 가공 중인 공작물에 대한 판별 시스템을 제안하였다.

고가의 영상보드와 라이브러리, Digitizer에 비해 저가의 비용으로 비전 시스템을

구축하고 가공 중에 여타 장비에 비하여 비교적 빠른 판별이 가능하도록 할 수

있는 방법을 제시하였으며 다음과 같이 결론을 요약할 수 있다.

1. 원격지의 2D 이미지만으로도 획득이 가능한 특징형상들의 분류를

수행하였으며 CAD 데이터를 이용하여 Database를 구축하였고 Vision 이미지에서

얻은 정보와의 매칭을 통해 웹기반에서 금형을 판별할 수 있는 시스템을

개발하였다.

2. 2D 정보를 이용하면 3D 정보보다 그 양이 매우 줄어든다는 장점이 있다. 물론

금형의 높이의 차를 감안하지 않는다는 것이 이 시스템의 단점이 될 수도 있으나,

실험결과에 의해 50mm이하의 적은 높이 차이에서는 큰 영향을 미치지 않는 것으로

나타났다.

3. 본 시스템은 가공 중에도 판별이 가능하도록 황삭, 중삭, 정삭이 끝난 후 각각

이미지를 획득할 수 있는 G-Code를 생성할 수 있다. G-Code에 의해 CNC Milling

Machine은 가공물을 이미지 획득을 위한 위치로 이송시켜 이미지를 획득하므로

언제든지 클라이언트의 금형 판별 요청에 응할 수 있다는 장점이 있다.

4. 최대한의 효과를 보기 위해 Preprocessing과 Cleaning의 단계를 자동화 시켰고,

실험에서의 금형에 대해 비교적 좋은 처리결과를 얻었지만, 조명의 조건이 다르고

Page 51: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

43

각종 이물질이 있을 실제 산업현장에서도 직접 사용될 수 있을 정도의 자동화 과정

개발이 필요하다.

Page 52: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

44

참고 문헌

[1] 윤길상, 권양훈, 조명우 “멀티센서시스템을 이용한 3차원 형상의

기상측정에 관한 연구”, 한국공작기계학회, Vol. 18, No.3, pp.23-34

[2] 조명우, 이세희, 서태일, “CAD/CAM/CAI 통합에 기초한 자유곡면의 On

Machine Measurement: Ⅰ. 측정오차 모델링”, 한국 정밀공학회 제 16권 제 10호, pp.

172-181

[3] Kazuo Muto “Advanced technology for manufacturing engineering development:

XML technology on a system that enables user to view required information from the work shop

through a web browser” JSAE (2003) 303-312

[4] 김정권, 윤길상, 조명우, “형상역공학을 통한 공정중 금형 가공물의

자동인식” 공작기계학회 03 추계대회 2003권 p. 420-425

[5] 김경민, 박귀태, 박중조, 이종학, 정진양, 이주강, “냉연 표면홈 검사

알고리듬 개발에 관한 연구”, 제어 자동화 시스템공학 논문지 제 3권 제 2호

1997.4

[6] Philippe Andrey, “Sectionist relaxation: genetic algorithms applied to image

segmentation”, Image and Vision Computing 17 (1999) 175-187

[7] Jeffrey Wood, “Invariant Pattern Recognition A Review”, Pattern Recognition, Vol. 29,

No. 1, pp. 1-17, 1996

[8] 조승호, 안종국 “화상처리를 이용한 도형인식에 대한 기초연구”

과학기술연구논총 1990년 제1집

Page 53: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

45

[9] 박재면, 이충수, 노형민, “2차원 도면으로 표현된 각주형 부품의 복합

특징형상 인식”, 대한기계학회논문집 A권, 제 23권 제 4호, pp. 571-577, 1999

[10] 이한민, 한순흥, “전문가 시스템을 이용한 2차원 설계 특징형상의 인식”,

한국 CAD/CAM학회 논문집, 제 6권 제 2호, 2001.6 pp. 133-139

[11] 이현찬, 이재현, “특징형상 인식을 통한 창성적 자동 공정계획 수립”,

한국 CAD/CAM 학회 논문집, 제 3권 제4호 1998.12 pp. 274-282

[12] 조규갑, 김석재, “제조특징에 의한 CAD/CAPP시스템”, 한국정밀공학회지

제 8권 제 1호, 1991. 3

[13] 이재열, 김광수, “특징형상 접근방법에 의한 가공특징형상 추출”, 한국

CAAD/CAM 학회 논문집, 제 4권, 제 2호, 1999.6 pp. 139-152

[14] 박홍성, 정명순, 김봉선, “웹기반 실시간 모니터링 시스템의 구조”, 제어

자동화 시스템공학 논문지 제 7권 제 7호 2001.7

Page 54: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

감사의 글

찬 바람 쌩쌩 부는 오늘, 이제 대학원을 마치고 새로운 사회생활로 진입하여야 할 이 시점에 지금의 저를 만들어 준 여러 사람의 얼굴들이 주마등처럼 스쳐지나갑니다.

지금까지 저를 키워주시고, 제가 항상 닮아가려고 노력하는 존경하고 사랑하는 부모님께 제일 먼저 감사의 말씀을 올립니다. 그리고 항상 저의 부족한 점을 커버해주는 동생 영진이에게도 고맙다는 말을 전하고 싶습니다.

또한 많이 부족한 저를 제자로 거두시고, 많은 지도로 저를 성장시켜주신 조명우 지도교수님께 진심으로 감사 드리오며, 바쁘신 와중에 마지막까지 저의 논문을 심사해주신 김재도 교수님, 이은상 교수님께도 감사의 말씀을 드립니다.

연구실 있던 동안 함께 웃고, 싸우며 정든 실험실 식구들, 귀여운 석영이를 데리고 다니시는 길상이형, 유한대로 컴백하신 성민이형, 여기뿐 아니라 KIMM의 지배자가 될 동우형과 교수님 미국가신 동안 살림하느라 진빠진 진화형, 졸업한 대일이형과 석우형, 양훈이형, 정권이형, 용철이형, 봉철이, 길상이형 따라 생기원에 눌러앉은 실험실 동기인 우철이형, 듬직이라는 한마디가 정말 잘 어울리는 건희, 아는 것 많아 분명히 부자가 될 석현이에게 고맙다는 말을 전하고 싶습니다.

Page 55: 仁荷大學校 大學院 ( 固體 및 生産工學專攻 ) 金 世 原 · 2010-10-16 · 3.1 UG API를 이용한 형상정보 ... 카메라로부터 들어온 영상이미지를

대학원 왕고 호준이형, 백일 지난 예쁜 딸이 있는 저희방으로 진출하실 레이저방의 병철이형, 일영이형, 경호형, 이사한 지금도 바로 옆에서 지내는 초정밀방의 새신랑 승엽이형과 그 외 영재형, 정훈이, 진용이, 원묵이에게도 고맙다는 한마디를 빼놓을 수가 없습니다. 또한 교수님 미국에 계실 때 저희를 지도해 주셨던 인천대의 서태일 교수님, 이제는 5호관으로 가신 공작실의 이기근 조교님께도 감사드립니다.

대학원에 입학할 때부터 늘 제 곁에서 응원하고 함께 해준 이뿌니 인애와, 바쁜 가운데서도 대화로 서로의 용기를 북돋던 재현, 상운, 광회, 기현, 영근, 정모, 명일이 그리고 그 외에 너무 많아 이름을 부를 수 없었던 친구들에게도 고마움의 마음을 전하고 싶습니다.

힘들 때마다 많은 조언과 격려를 해준 교수님과 동기들에게 다시 한번 고마운 마음을 전합니다.

2004년의 어느 겨울날 저녁

김 세 원