Posts Tagged ‘web cam’

Tech Report 박기철 홍상화

April 6, 2009

1. 졸업관련 프로젝트에 쓰일 만한 센서나 기술을 생각 해봅시다.

#1. Webcam

웹캠은 컴퓨터에 다는 화상 회의 및 화상 채팅용 작은 카메라이다. 화소수가 작고 표현력은 떨어지나 값이 싸고 크기가 작은 까닭으로 우리 인터렉션 디자이너들에게는 유용한 도구로 쓰이고 있다.

img_57572

2. 그러한 기술이나 센서가 쓰일만한 우리 주위의 일상생활 속에서 물건이나 기계등을 생각해 봅니다. 그리고 먼저 최상의 인터렉션디자인경험을 우리에게 주는 지를 생각해봅니다.

Sony EYETOY

00001ad

2004년 4월 소니 플레이스테이션2 어플리케이션으로 웹캠을 이용하여 사용자의 행동을 감지하고 게임을 즐길 수 있게 만든 기기

Andrew Hieronymi -  Move

23400000234

적외선 조명과 적외선 카메라를 이용하여 만든 인터렉션 설치 작품, 바닥에 비치는 화면 위에서 관람객은 직접 뛰어 다니면서 5종류의 게임을 할 수 있다.

이러한 게임이나 미디어아트 작품 이외에도, 카메라의 응용은 인간의 오감 중 시각을 이용할 수 있다는 점에서 중요하며 범용성이 넓은 디바이스 이다.

untitled-1hll

이밖에 로봇기술 등에서 사람의 얼굴을 인식하는 기술을 효용가치 높게 평가하여 활발히 개발 중에 있으며, 영화 ‘마이너리티 리포트’ 에서 보여준 제어 기술도 이미 구현은 되었지만 사용자는 센서가 부착된 장갑을 착용해야만 하는 번거로움이 있다.

하지만 센서가 아닌 카메라를 사용하여 구현한다면 사용자는 동작만으로 시스템을 제어 할 수 있다.

3. 실험

웹캠에서 읽어들이는 데이터를 마음대로 조절하고 분석해서 사용할 수 있다면 어떨까?

asd

컬러 트래킹이나 모션 트래킹을 쓰지 않고 단순히 처음 설정해 놓은 이미지와 나중에 변하는 이미지의 차이를 계산함으로써 그 차이를 변수로 이용하고자 하였다.

JMyron 의 simpleCamera 예제를 보면 다음과 같이 사진을 통채로 받는 것이 아니라 해상도를 설정하고 해상도의 이미지를 픽셀 하나씩 배열하여 영상을 만들어 내는 것을 알 수 있다.

asdasd

또한 전체 해상도 값(width*height)를 width와 width/2로 바꿔 실행 해보면 픽셀이 위에서 아래로, 그리고 좌측에서 우측으로 순서대로 배열되는 것을 알 수 있다.

이를 토대로 기준이 되는 한장의 이미지를 저장하고 이를 변화하는 영상과 비교하여 차이가 있으면 반응 하도록 프로그래밍 하였다.

23

하지만 생각과 달리 픽셀의 값은 음영 뿐만 아니라 색의 정보도 포함 하고 있기 때문에 제대로 작동하지 않았다.

웹캠에서 받아들이는 영상은 흑백의 음영으로 바꾸고 보다 단순화 시킬 필요가 있었다.

이에관한 조사를 하던중 다음 사이트에서 이러한 코팅을 얻을 수 있었다.

http://21dish.com/blog/class/entry/%B3%AD%C0%CC%B5%B5%BB%F3-%C8%E6%B9%E9%C0%CC%B9%CC%C1%F6%B8%A6-10%B4%DC%B0%E8%C0%C7-%C4%C3%B7%AF-%C6%C8%B7%B9%C6%AE%B7%CE-%BA%AF%B0%E6%C7%CF%B1%E2

위의 코딩에서는 프로그래머가 색의 파레트를 규정하고 웹캠에서 오는 영상을 이 파레트의 한계 내에서 표현하도록 규정 한 것이다.

이를 응용하여 다음과 같은 영상도 만들 수 있다.

이 코드를 이용하여 프로그램을 수정하여 0부터 255 사이의 값으로 받은뒤 기존에 저장된 값에서 +- 100의 차이가 나면 색 변수가 변하도록 만들었다.

00000233

현재 4X4 총 16개의 영역으로 나누어 제어했지만 이는 간단하게 우리가 원하는 만큼 늘려 해상도를 높일 수 있으며 프로세싱과 알두이노 간의 통신으로 아날로그 회로에 적용도 가능하다.

#2. 전자석

1. 전자석의 같은 극성끼리 밀어내는 힘을 사용
2. 전자석은 도선에 전류가 흐르면 도선 주위에 동심원 모양의 자기장이 형성된다. 이러한 원리를 이용하여 영구자석으로는 얻을 수 없는 매우 강력한 자기장을 얻을 수 있다. 쉽게 모터, 발전기, 전자식 벨브, 스피커, 폐차장의 기중기같은 경우도 전자석의 원리를 이용한 것이다.

eab8b0ec88a0eba6acec849cecb9981

여기에 전자기력을 이용한것 중에 우리가 이용할려는 밀어내는 힘을 사용한 한 예는 자기부상열차가 있다.

3. 실험경과

전자석을 제작하여 같은 극성끼리 밀어내는 힘을 이용해 전력을 넣었을때 물체를 밀어 올리는 모듈제작을 목표로 하였다.
전자석의 원리 : 플레밍의 왼손 법칙
힘의 크기 f = 코일의 밀도 B 도체의 길이 l 전류 A sinθ
첫번째 시도 : 대못을 불에 달군뒤 천천히 식혀 강철을 연철 성질로 바꾼다음 코일을 감았다.
촘촘하게 감았고 12볼트의 전압을 넣었으나 전자기력이 너무 약했음
두번째 시도 : 코일의 밀도를 높이기 위해 칭칭 감았다. 전자기력이 비약적으로 상승. 끌어당기는 힘은 좋으나 밀어내는 힘이 약함.
세번째 시도 : 전자석의 전자기력을 높이는 것에 한계 – 자석을 초강력 자석으로 바꿈, 더 큰 대못으로 바꿈, 코일의 밀도를 더 높임. 끌어 당기는 힘과 밀어내는 힘은 아주 좋아 졌으나 문제발생;;

eab8b0ec88a0eba6aced8faced8ab83

문제 : 대못의 전자기력 방향에 따라 자기력을 형성한 뒤 자석을 붙였을때는 밀어냄. 하지만 더 가까이 가져갔을 때 못과 초강력 자석이 붙어버림. (못 주위에 형성되는 자기력의 방향이 자석을 밀어내지만 가까이 가져갔을경우 자기력의 밀어내는 힘보다 자석이 철을 끌어당기는 힘이 더 강하여 붙는것으로 보임)
전류를 넣기전에 붙어 있는 상태일때 초강력자석의 자력이 너무 강해 전자기력의 밀어내는 힘으로 뗄 수 없음. 붙어 있지 않고 어느정도 공간을 유지하고 있어야함
특별한 프레임이 필요.

다른 대안을 알아본 결과 전자석원리를 이용한 솔레노이드라는 것을 사용하기로 함.
솔레노이드는 전자식 개폐기, 초인종, 전기식 벨브등에 활용되고 있다.
eab8b0ec88a0eba6acec849cecb9982
전류를 넣었을때 강한 힘으로 튀어 나옴.하지만 튀어 나오는 길이가 그다지 길지 않음.