박동진, 전경구 D.J. Park, K.K. Jun 1. 서론 기보란그림과문자로바둑의기본기술과전략 유명한대국의전체적인수순등을정리해놓은문서 다 바둑을익힘에서명인들의기보를익히는연구회 가있을정도로기보는중요한역할을한다 현재바 둑은온라인으로도많이즐길수있어 편하게기보 를작성할수있다 하지만프로들의대국은오프라 인으로진행되고 이같은경우는여전히수작업으로 기보를불편하게작성하고있다 수작업기보작성의어려움때문에 자동으로기 보를작성하기위한몇가지시도가있었다 과 에서는바둑판에장치를설치해기보를작성하는 시스템을구현했다 바둑판에는총 개의직선과이 직선의접점인 개의교점이있다 에서는이 교점에버튼을설치해기보를작성한다 에서는 바둑판에전기적인장치를설치하고 전기신호를이 용해바둑돌의위치를감지해 기보를작성한다 하 지만 과 는별도로제작된바둑판을이용해야 하므로대중화되기는어렵다 이러한문제로 는영상처리를통해별도의장치에의존하지않는 방법을제안한다 은대국영상에서바둑판위의교차점을찾아내 고 해당좌표의색상정보를이용해기보를작성한 다 교차점검출과정은그림 과같다 대국영상에서 를통해바둑판의선들을검 출한다 이는그림 의 번영상과같다 번의영상 에서이진화를통해노이즈를제거한것이 번이다
Fig 1. Crossing detection process of [3]. 번에서 을이용해 개의직선을검출하면 각직선의좌표들을얻을수있다 이를통해 개의교차점을구해낸것이 번영상이다 하지만바둑판위의노이즈로직선의위치가미세하게어긋나잘못검출된교차점이있다 이를제거하기위해교차점을수정하는과정이 번의영상들이다번영상에서바둑판의네개의꼭지점을검출하고 대각의교차점을이용해중심점을찾아낸다 이점들의좌표를이용해각교차점사이의거리를계산하고 잘못검출된교차점의위치를삭제하거나 수정한다 일련의과정들을통해 개의교차점을검출한것이 번영상이다 검출해낸교차점좌표들의색상정보를통해바둑돌의존재여부 흑혹은백의여부를결정할수있다 과본논문은바둑자동기보시스템이라는공통점이있으나 기보작성시핵심기술인바둑돌검출방법이다르다 의경우바둑판의교차점을통해바둑돌의위치를파악하지만 본논문은바둑돌의원모양을이용해검출하는방식이다 는바둑돌의위치변화를감지하기위해새로운바둑돌을놓기전과후의영상차이를이용한다 시간 에획득한 차원영상을 라하고 이영상의좌표 의픽셀값을 라하자 이때 는그레이스케일영상이고 노이즈제거를위해가우시안필터링이적용된상태라고가정한다 시간 에새로놓인바둑돌의위치를검출하기위한 와 영상간의차이 는각픽셀 에대해서다음과같이 계산된다 이때 집합 를 와 간의픽셀값차이가있는 들의집합이라고하자 는다음식을만족하는양의정수 가존재하면 에새로운바둑돌이놓였다고판단한다 여기서 은차영상에서하나의바둑돌을나타내는데필요한픽셀개수이다 카메라와바둑판간의거리가고정되었다는가정하에 은실험을통해구할수있다 따라서 과 간에값이변화된전체픽셀의개수 가 의 정수배일경우 바둑돌 개가새로놓였다는것을의미한다 그리고이들이놓인위치는 인픽셀간의근접정도를고려하여계산한다 앞서설명한 의방법은새로바둑돌을놓을때마다 개의교점의정보를매번검사해야하는문제가있다 이는 의방법을사용할경우간단히해결할수있는문제지만 이방법또한몇가지문제점을가지고있다 첫번째는조도변화에취약하다는것이다 과 영상간에조도변화가있으면 바둑돌을인식하지못할수도있다 두번째는카메라와바둑판간의거리를미리알고있어야한다 세
번째는바둑돌의미세한위치변화에취약하다 새로운바둑돌을놓으면서주변돌을움직일경우 위치변화된바둑돌이재인식되는상황이발생한다 본논문은조도변화와미세위치변화 카메라와바둑판간높이변화가허용되는상황에서도동작하는자동기보시스템을제안한다 문제점을극복하기위해노이즈를제거하는필터링방법 바둑돌의원모양을검출하는 높이변화를고려하는방법들을제안한다 본논문은다음과같이구성된다장에서는제안하는자동기보시스템의특징적인방법들을설명한다장에서는제안한방법들을이용한기보시스템을구현하여성능평가를시행하고그결과를제시한다장에서는논문을결론짓는다 2. RANSAC 기반자동기보시스템 제안하는자동기보시스템은그림 와같이바둑판전체를촬영하는카메라를이용한다 시스템의동작순서는그림 과같고 그림 에메겨진번호를통해자동기보시스템을설명한다 카메라가획득한바둑판 영상은그레이스케일변환시켜흑백영상을만든다 이것이그림 의 번에해당한다 흑백영상은두가지용도로쓰이는데 바둑돌위치를검 Fig. 2. Automatic Go recording system. Fig. 3. Flow chart of Automatic Go recording system. 출하는용도와검출된바둑돌의흑백여부를구분하는용도이다 흑백여부구분은흑백영상을이진화영상으로변환하여진행하며 이영상은별도로저장한다 그림 는이러한일련의과정을보여준다 다음과정설명에앞서 에대한설명이필요해먼저서술한다 제안방식은바둑돌위치검출을위해 을이용한다 은영상처리에서다양한방법으로응용되는기술로써 무작위로선택한데이터로부터수학모델을구성하고 나머지데이터들이이모델을만족하는비율을근거로모델이적합한지를판단하는방법이다 이때모델을만족하는데이터들을 그렇지않은것들을 라고한다 제안방법은영상에서추출된에지들의픽셀들을데이터로이용하여원에대한수학모델을구한다 원모델은바둑돌을나타내는데 충분한개수의 들이이모델을만족하면그위치에서바둑돌이검출된것이다 위에서 들의개수가바둑돌검출의중요한조건이다 제안하는시스템에서 들이란바둑대국영상에찍힌바둑돌의에지픽셀들이다 하지만픽셀들의개수는카메라의높이에따라변화하기가쉽다 그래서우리는그림 의 번바둑돌의크기를추
Fig. 4. (A) Gray Image, (B) Canny Edge detection image of (A), (C) Binary image of (A). 정하는과정을거쳐야한다 카메라높이변화에따 라바둑돌픽셀개수를결정하는것은미리알려진 값에대한비례식으로계산할수있다 미리알려진 카메라높이에서의바둑판한변을나타내는에지 픽셀개수를 바둑돌에지픽셀개수를 이라하 자 카메라높이가변화되어 바둑판한변의픽셀 개수를 로변하면 바둑돌에지픽셀개수 은다음 과같이계산된다 예를들어 본논문에서는실험을통해카메라높 이가 일때 바둑판한변픽셀개수는 바둑돌에지픽셀수가 인것을이용한다 우리는 효율성을높이기위한전처리과 정을제안한다 우선 에지들을제거한다 에의해검출된에지들은바 둑돌에지이외에바둑판의선 기타테두리들의에 지들도포함한다 입장에서바둑돌의에 지에해당하는픽셀들이 이외의픽셀들은 가된다 원검출성공확률을높이려면 에지들을최대한제외시키는것이유리하다 이를위 해에지검출전에가우시안필터링을수행하고 에지 검출후에는테두리꼭지점판단등을이용해서 들을최대한제거한다 또한대국이진행될수록바둑판에놓여지는바둑 돌의수가많아지므로 연산량이증가하는 단점이있다 이를개선하기위해차영상에대해서 을수행하는방법을제안한다 이것은그 림 의 번에해당하는과정이다 이전바둑돌위치 검출에사용된 영상을 이라하고 현재영상을 할때 두영상간의차이 에대해서 을적용한다 에서는이전바둑돌들의에지가모두제거되기때문에새로놓여진바둑돌의에지만남게되어 연산량이감소한다 하지만차영상 에항상하나의바둑돌에해당하는에지만존재하지는않는다 대국자들이주변바둑돌을건드려원래위치에서벗어나는미세변화때문에새로운에지가생기기도한다 또한 과 를얻기위해사용한원래영상들간에조도가다를경우에도에지가생길수있다 이러한에지들은바둑돌에해당하는것이아니므로노이즈에지들이다 이러한노이즈에지들을제거하기위해제안방법에서는필터링을사용한다 이것은그림 의 번에해당되는과정이다 그림 와같이별도의필터영상을생성하고 새로운바둑돌이검출될때마다누적해서원을그려넣는다 이필터영상과차영상 의차이를구함으로써노이즈에지들을제거할수있고 Fig. 5. Filter image.
Fig. 6. Preprocessing procedure for performing RANSAC. 은이결과에대해서수행된다 그림 는 이와같은 효율성을높이기위한전처리 과정을순서대로보여준다 앞서 을효율적으로사용하기위한전처 리과정들을수행했다 이제부터는실질적으로바둑 돌을검출하는과정에대해설명한다 을 실행시키기위해서는우선바둑돌픽셀데이터들을 입력해야한다 그림 의 번의결과영상을 을거쳐에지들을얻어내고 에지정보 를벡터에저장한다 이과정을그림 의 번결과영 상 이라한다 지금까지 을실행하기위한준비과정을 모두마쳤다 이제는 으로어떻게바둑돌 을검출하는지를설명한다 우리는 에서 바둑돌위치검출을위한수학모델로삼각형의외접 원을이용한다 바둑돌의에지를구성하는세픽셀 로삼각형을만든다면 그외접원의중심 와반지름 은다음과같다 외접원모델을구하기위해 우선픽셀데이터중 임의로세개를뽑아외접원모델을구성하고 나머 지픽셀데이터들이이를만족하는비율을계산한다 이때만족비율을 라한다 에서 는이과정을 번반복하고 이중가장 가 높은모델을반환한다 이때 은다음과같이결정 된다 한번에뽑는픽셀데이터의개수를 데이터 중 의비율을 라하면 번수행하면서 개를 모두 로만선택할확률 는다음과같다 따라서 과 가결정된다면 은다음과같이 계산된다 log log 는전체픽셀데이터개수대비바둑돌에지의 픽셀개수의비율이다 를결정하기위해서는카메 라높이가고려되어야한다 왜냐하면바둑판위에 설치되는카메라높이에따라에지를구성하는픽셀 들의개수가변하기때문이다 특히하나의바둑돌의 에지를구성하는픽셀개수는높이에따라변한다 이는앞서그림 의 번과정에서식 를통해구했 다 식 을통해계산한 이그림 의 번과정이다 구성된수학모델이적합한지는모델에대한다른 픽셀들의 비율로결정한다 임의의픽셀이 인지를판단하기위해서 수학모델이나타내는 원의중심좌표를 반지름을 픽셀 의좌표를 라할때 두좌표간의거리 건을만족하면 픽셀 는 이다 가다음조
픽셀들의개수가하나의바둑돌에지픽셀수 의 이상이면수학모델이적합하다고결정된다 이러한과정이그림 의 번에해당한다 마지막단계에서는검출된바둑돌의위치를기보에기록한다 그림 의마지막단계 번에해당한다 이때앞서별도로저장해두었던이진화영상의픽셀정보를이용해흑과백을결정한다 3. 자동기보시스템성능평가제안한자동기보시스템성능을평가하기위한환경은그림 와같다 바둑판전체를촬영하기위해카메라를바둑판위에설치하였다 카메라의높이는임의로조절할수있다 실험에서는바둑대신오목에대한기보를작성했다 영상처리관점에서두게임간에큰차이가없으므로 바둑기보작성과큰차이가없으리라생각된다 실험에사용된 파라미터값은표 과같다 그림 은서로다른카메라높이에서작성된기보들이다 카메라높이를 로각각설정한이후에실험을진행하였다 이는제안방식이카메라높이가달라질경우에도성공적으로기보작성이가 능하다는것을보여준다 앞서 장에서바둑돌위치의미세변화와조도변화에따른기존방식의문제점들을언급했다 여기서는인위적으로이러한변화상황을만들어 기존방법 와제안방식의성능을평가한다 첫번째실험에서는바둑돌위치의미세변화에대한실험이다 본실험에서는기존에놓여있는바둑돌사이에새로운바둑돌을놓으면서 주변바둑돌이위치이동되도록하였다 그림 는바둑돌을놓기전후의영상이다 새로놓인바둑돌의위치를사각형으로표시했다 그림 는기존의방법을사용했을때차영상결과이다 그림 는제안방식의결과로 필터영상을이용하여노이즈에지들을상당부분제거된것을볼수있다 두번째실험은조도변화에대한실험이다 바둑돌을놓기전과후에급격한조도변화를주었다 바둑돌의위치는첫번째실험과같다 그림 는기존방법을사용했을때 차영상을이진화한영상이다 기존방법의경우조도변화로생긴그림자때문에 검출한새바둑돌을찾을수가없다 그림 는제안방식의결과로그림자노이즈들이상당부분제거된것을볼수있다 마지막실험은기존방법과제안방법의바둑돌 Table 1. RANSAC parameter values Fig. 7. (A) Detection image in 54cm, (B) Detection image in 69cm, (C) Detection image in 82cm.
Fig. 8. Before and after image of stone dislocation by player. (A) Image before dislocation, (B) Image after dislocation. Fig. 9. Binary image in dislocation experiment. (A) Binary image of past method, (B) Binary image of proposed method. Fig. 10. Binary image in illumination change experiment. (A) Binary image of past method, (B) Binary image of proposed method.
Fig. 11. Stone detection experiment result. (A) Result of past method, (B) Result of proposed method. 검출속도와정확도를비교한실험이다 실험의객관성을높이기위해실제바둑대국영상에서바둑판화면을캡쳐해실험했다 대국영상은총 수로이뤄졌고 장의캡쳐사진을자동바둑기보시스템에입력해바둑돌검출여부와검출속도를측정했다 기존방법은오차율을 로적용해 차영상의크기가식 을만족하는지의여부로검출여부와속도를측정했다 그림 과그림 는기존방법과제안방법의검출률과검출속도를보여준다 총 번의시도중제안방법은 번을성공해 의성공률을보였고 기존방법의경우 번을성공해 의성공률을보여준다 기존방법의경우대부분대국자의바둑돌건드림으로검출에실패했고 바둑돌이많아질수록더자주발생했다 검출속도의경우제안방법은평균검출속도가 기존방법은 임을확인했다 기존의방법보다 초느리지만 그 차이가작은것을알수있다 4. 결론본논문에서는영상처리를통해바둑대국을자동으로기록하는시스템을개발하였다 이시스템은 알고리즘을통해기보를작성하며 바둑돌위치의미세변화나조도변화 카메라높이변화에의한영향을받지않는다 제안방식은필터영상을통해노이즈에지들을효과적으로제거할수있다 또한 연산량의개선을위한방법들도제안하였다 제안한방법을구현하여기보작성이가능함을보였고 기존방식의문제점들도극복했음을확인했다 향후연구에서는제안방법을이용하여전체적인자동기보시스템을구현하는것을목표로한다 여기에는죽은돌검출 구축 바둑연구를돕는복기시스템등이있고 성능검증을위해실제바둑대국영상을통한정량적자료를제시할것이다 REFERENCE Fig. 12. Detection speed comparison about past method and proposed method.
년 월인천대학교임베디드시스템공학과학사 년 월 현재인천대학교임베디드시스템공학과석사과정 년 월서강대학교전자계산학학사 년 월 년 월 년 월 년 월 년 월 년 월삼성전자책임연구원 년 월 인천대학교임베디드시스템공학과부교수