본문 바로가기

나무가 피운 꽃/작업들 /project

#피카소프로젝트를 위한 Tracking & Affine Mapping test

보르노이 알고리즘에 의해 조각들이 랜덤으로 분할되어 뿌려지고, 카메라에 인식된 움직임이 트래킹 되어지면,
화면 안에서 조각들은 움직이는 영상에 해당하는 영역의 영상만 실시간으로 바뀌게 하는 테스트이다.
보르노이에의한 면 분할에 R,G,B를 랜덤으로 뿌리고, 움직임이 트래킹 된 영역의 컬러를 다시 랜덤으로 바꿔지게 하였다.
움직임 영역을 트래킹하는 영상은 이진화된 영상으로 객체의 빠른 변화도 감지할 수 있도록 다운 샘플링작업을 하였으며,
움직임이 없는 영역의 분할된 조각은 보이지 않게 처리한다.
이것은 나중에 최종적으로 전시될 때에는 최초의 화면은 컴퓨터가 임의로 결정한 어떠한 조각들이 보여지게 해야할 것이다.
왜냐하면 관람객이 트래킹의 영역에 최초에 들어왔을 때는 엄밀히 말해서 움직임의 변화를 인식하는것이라고 하기보다는 프레임의 일정부분이 바로 앞의 프레임과 다른 것으로 관람객의 입장을 인식하였기 때문이다. 
결국, 관람객이 보는 최초의 화면은 컴퓨터가 임의로 결정한 랜덤조각의 일부를 보게 되는 것이고, 그 다음의 조각들은 관람객 자신의 움직임을 트래킹하여 관람객에게 의존적인 트래킹 조각들이 보여지게 처리된다.    




작업의 관건은 바로 카메라에 들어온 이미지의 분할을 바로 위에서 설명한 트래킹된 조각들의 영역에 어떻게 mapping시키느냐이다.
이 작업에서는 시점이 다른 카메라 두대를 사용하게 때문에 실시간성으로 퀄리티가 높은 mapping 과정을 처리하게 해야한다.
다양한 스케일과, 회전, 등의 변환을 거친 실제영상이 조각들에 빠른 속도로 mapping이 되게 하는 것은 생각보다 어려운 작업이다. 
정말 많은 양의 계산량이 필요하고, 랜덤변수도 각각의 움직임에 해당하는 조각에, 각각의 움직임에 대한 것도 들어가야하니 말이다.
결국, 최초에 화면이 분할된 조각들의 영역은 변화하지 않게 고정시키기로 결정하였다.
최초의 분할 영역에 카메라 이미지를 mapping한 다음,  움직임에 의해서 다시 움직인 영역에만 영상이 변화는 처리는, 
영상은 변화지만 화면분할은 최초의 분할 그대로 두는 것이다.  (설명이 좀 복잡하지만, 심플한 해결이라고 생각했다.) 
그렇게 해서 계산량은 조금이라도 줄이고, 실시간성을 높인 다고 높인 것이 그래도 관람객움직임 있은 다음 0.3초 정도있다가 영상이 변한다. 그럴 수 밖에 없는 이유가 움직임 인식된 화면을 가져다가(tracking)  랜덤으로 변환처리(random+ affine) 최조의 화면 분할에 mapping까지 하려니 0.3초라는 시간은 실시간이라도 해도 거의 과언이 아니다. 사운드와 맞추어 봤을 때 거울깨지는 뿌지직 소리의 0.5초 정도 뒤에 화면에 움직임에 해당하는 영상이 뜬다. 마치 번개와 천둥처럼, 서로 약간의 오차(?) 가 매력적인 느낌이라고나 해두고 싶다. 오히려 이 작업과 어울리니 (실시간 - 0.3초)는 Pass!