더북(TheBook)

이처럼 getTickCount()getTickFrequency() 함수를 조합하여 사용하면 특정 연산 시간을 정확하게 측정할 수 있지만, 이 두 함수의 이름과 사용법이 초보자에게는 다소 생소하게 느껴지기도 합니다. 그래서 OpenCV 3.2.0 버전부터 연산 시간 측정을 위한 TickMeter라는 이름의 클래스를 새롭게 제공합니다. TickMeter 클래스는 직관적인 이름의 시간 측정 멤버 함수를 가지고 있어서 OpenCV 초보자도 쉽게 사용할 수 있습니다. 간략화한 TickMeter 클래스 정의를 코드 4-18에 나타냈습니다.

코드 4-18 간략화한 TickMeter 클래스 정의

01    class TickMeter
02    {
03    public:
04        TickMeter();
05     
06        void start();
07        void stop();
08        void reset();
09     
10        double getTimeMicro() const;
11        double getTimeMilli() const;
12        double getTimeSec() const;
13        int64 getCounter() const
14        ...
15    };

 

1행 TickMeter 기본 생성자입니다.

6~8행 TickMeter::start() 함수는 시간 측정을 시작할 때 사용합니다.

7행 TickMeter::stop() 함수는 시간 측정을 멈출 때 사용합니다.

8행 TickMeter::reset() 함수는 새롭게 연산 시간을 측정하고자 할 때 사용하며, 모든 멤버 변수 값을 0으로 초기화합니다.

10행 TickMeter::getTimeMicro() 함수는 연산 시간을 마이크로 초 단위로 반환합니다.

11행 TickMeter::getTimeMilli() 함수는 연산 시간을 밀리초 단위로 반환합니다.

12행 TickMeter::getTimeSec() 함수는 연산 시간을 초 단위로 반환합니다.

13행 TickMeter::getCounter() 함수는 시간 측정을 수행한 횟수를 반환합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.