dev-logs
카메라에서 frame 들어오는 속도 확인하는 법 본문
좋은 영상을 얻는 것은, 영상처리에서 중요한 것 중 하나라고 생각한다.
그러기 위해서는 내가 사용할 카메라에 대해서 잘 알아야 한다.
여러가지 정보중에 카메라가 영상 프레임을 몇초에 한번씩 주는지(fps)를 확인하는 것이 중요하다.
카메라가 그냥 카메라만 달려있다면 크게 상관하지 않고 카메라가 얻는 fps만 고려하면 된다.
하지만 카메라에 영상처리 기능 외 다른 기능의 알고리즘이 있다면 내 알고리즘을 얼마나 수행시킬 수 있는지 확인해야 한다.
나는 보통 1초에 frame 이 몇번 들어오는지 확인하는데 이걸 확인하는 매우매우 간단한 코드를 저장할 겸 올린다.
1 2 3 4 | static int algoFlag = 0, algoCnt = 0; //처음 시간만을 저장하기위한 플래그와 알고리즘 수행횟수 저장변수 static long algo_st, algo_end; //시간 저장 변수 | cs |
필요한 변수이다.
내 알고리즘에 진입하는 소스 파일에 선언한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | algoCnt++; if(algoFlag ==1){ GetTime(&algo_end);// if(TICK_TO_MS(algo_end - algo_st) > 1000){ printc("algoCnt per 1Sec: %d\n\n", algoCnt); algoFlag =0; //알림 후 다시 초기화 algoCnt = 0; } } else{ //처음에만 여기로 옴 GetTime(&algo_st); //측정시작 algoFlag = 1; } | cs |
위 코드의 맨 마지막에 내 알고리즘이 호출된다.
GetTime 함수는 시간을 얻는 함수인데, clock() 같은 STL 을 써도 된다! 대신 변수 선언을 이에 맞게 해줘야 한다.
ms 기준으로 1000 이상이 되면 1초동안 알고리즘 수행 횟수를 출력한다.
'공부 > 영상처리' 카테고리의 다른 글
[이미지포맷변환] yuv422 to gray (0) | 2018.07.17 |
---|---|
3. MFC를 이용한 viewer 만들기_RGB를GRAY로 (2) | 2017.12.15 |
2. MFC를 이용한 viewer 만들기_jpg 불러오기 (1) | 2017.12.15 |
1. opencv 3.0 설치 및 세팅 (0) | 2017.12.15 |
[Android] Android에서 카메라로 동영상 녹화하기-외부저장소에 접근 (0) | 2017.12.07 |
Comments