출처

Raspberry Pi 3와 4 : OpenCV - 캐니 에지(Canny Edge) 속도 비교

캐니 에지(Canny Edge)는 1986년. John F. Canny 에 의해 개발된 알고리즘으로 윤곽을 원래 영상의 회색물질과 관련된 모든 에지(Edge)들을 제거하는 함수 입니다. Raspberry Pi 3와 4 실행해서 속도 비교를 해보았는데, 실행 결과를 보면 라즈베리파이3에서 실행 한것 보다 2배 약간 못되게 빠르게 동작하고 있습니다.

소스

#include "opencv2/opencv.hpp"
#include <iostream>

using namespace cv;
using namespace std;

int main(void)
{

	VideoCapture cap("Zootopia.mp4");

	if (!cap.isOpened()) {
		cerr << "Camera open failed" << endl;
		return -1;
	}

	Mat frame, gray, blurred, edge;
	while (true) {
		//cap >> frame;
		cap.read(frame);

		if (frame.empty()) {
			break;
		}

		TickMeter tm;
		tm.start();

		cvtColor(frame, gray, COLOR_BGR2GRAY);
		bilateralFilter(gray, blurred, -1, 10, 5);
		Canny(blurred, edge, 50, 150);

		tm.stop();

		cout << tm.getTimeMilli() << "[ms]" << endl;
		
		imshow("frame", frame);
		imshow("blurred", blurred);
		imshow("edge", edge);
		
		if (waitKey(1) == 27) {
			break;
		}
	}

	return 0;
}

컴파일

$ g++ main.cpp -o main `pkg-config --cflags --libs opencv4`

실행 (라즈베리파이3와 라즈베리파이4의 실행 시간 비교)

왼쪽은 라즈베리파이3에서 오른쪽은 라즈베리파이4에서 실행한 결과 입니다. 결과를 보시면 라즈베리파이4에서 실행결과가 라즈베리파이3에서 실행 한것 보다 2배 약간 못되게 빠르게 동작하고 있습니다.

pi@raspberrypi:~$ ./main          pi@raspberrypi:~ $ ./main
585.437[ms]                       293.316[ms]              
514.686[ms]                       258.292[ms]              
538.228[ms]                       257.687[ms]              
585.28[ms]                        255.691[ms]              
525.669[ms]                       272.336[ms]              
558.1[ms]                         255.374[ms]              
501.31[ms]                        263.007[ms]              
536.957[ms]                       256.362[ms]              
546.125[ms]                       258.705[ms]              
526.227[ms]                       259.988[ms]              
592.775[ms]                       254.891[ms]              
516.922[ms]                       255.25[ms]               
558.278[ms]                       260.084[ms]              
506.094[ms]                       261.073[ms]              
563.045[ms]                       256.056[ms]              
511.093[ms]                       270.214[ms]              
514.54[ms]                        264.756[ms]              
575.578[ms]                       256.604[ms]              
510.783[ms]                       256.996[ms]              
593.594[ms]                       268.694[ms]              
508.261[ms]                       257.855[ms]              
547.456[ms]                       259.229[ms]              
521.765[ms]                       255.19[ms]               
521.937[ms]                       255.639[ms]              
539.471[ms]                       255.995[ms]              
511.757[ms]                       258.853[ms]              
585.117[ms]                       256.869[ms] 

실행 영상