22
병렬프로그래밍 동영상 피부보정 2009280332 컴퓨터 정보학과 김지식

병렬처리를 활용한 피부 보정 프로그램(Open cv)

Embed Size (px)

Citation preview

병렬프로그래밍동영상 피부보정

2009280332컴퓨터 정보학과김지식

프로그램설명

작동원리설명

1. 동영상에서피부를도려낸다 (HSV)

작동원리설명

2. 도려낸피부에한해서블러링효과를적용하면서피부를보정한다

작동원리설명

2. 도려낸피부에한해서블러링효과를적용하면서피부를보정한다

작동원리설명

2. 도려낸피부에한해서블러링효과를적용하면서피부를보정한다

작동원리설명

3. 도려낸피부를원본영상에덮어씌운다

작동원리설명

3. 도려낸피부를원본영상에덮어씌운다

병렬프로그래밍

병렬 프로그래밍이 꼭 필요한 이유분석1

픽셀단위로블러링하게되면데이터처리량이엄청크다

영상 1초에사진 24장

각사진 1장당최대 (640*360) 블러링실시

블러링각 1번에수십번의연산

OPEN MP

화면을 분할해서 병렬처리분석1

화면을 4등분해서병렬처리하는방식

화면을 분할해서 병렬처리분석1

화면을 4등분해서병렬처리하는방식

성능측정결과

성능 측정 결과분석2

순차처리구간은병렬처리구간에비해작업량이 1%가채되지않는다.

핵심만설명하기위해순차처리구간제외

성능 측정 결과분석2

싱글코어에서실행했을경우

4초영상테스트결과 64초

성능 측정 결과분석2

싱글코어에서실행했을경우

4코어에서실행했을경우 (하이퍼스레딩)

4초영상테스트결과 64초

4초영상테스트결과 34초

약 2배에 가까운 성능 향상

왜 4배가아니라2배의성능향상 ?

화면을 분할해서 병렬처리분석1

3번째작업구간이전체작업량의절반을가지고있으므로성능은싱글코어가절반의작업량을해치우는시간과같다. (2배)

Data Dependency 존재

성능 측정 결과분석2

싱글코어에서실행했을경우

4코어에서실행했을경우 (하이퍼스레딩)

5프레임풀블러링테스트결과 53초

코어개수 4배 + 하이퍼스레딩

약 4배 이상의 성능 향상

영상처리이상적인방법

영상 처리 기본 병렬 방식전략

1초에 24초의프레임의사진이순식간에지나간다사람이그보다더빨리움직이는것은힘들기에인접한프레임끼리는처리해야하는양이거의같다.

1프레임-> 1코어2프레임-> 2코어3프레임-> 3코어4프레임-> 4코어5프레임-> 다시 1코어