Форум программистов, компьютерный форум CyberForum.ru

Идентификаторы: createHanningWindow и phaseCorrelate не найдены - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проверить какая клавиша/клавиши нажаты в текущем приложении (консольном) http://www.cyberforum.ru/cpp-beginners/thread1236974.html
Есть игра в консольном приложении, на двоих(на WinAPI). Управление: у первого игрока w, a, s, d; у второго на стрелках. Как проверять какие клавиши нажаты? Нужно чтобы для каждого игрока действия выполнялись одинаково вовремя. Что-то вроде этого: while (true) { switch (Нажатая_клавиша) { case W: player1.up(); ... case UP: player2.up(); ...
C++ Дискретная модель. Задача на вычисление времени полета тела В общем вопрос в названии темы. Что такое дискретная модель? Решаю простые задачи на С++ попалась задача на вычисление времени полета тела, но в условии сказано использовать дискретную модель. Можно какие- нибудь примеры. http://www.cyberforum.ru/cpp-beginners/thread1236941.html
Когда и где следует использовать механизм исключительных ситуаций? C++
Вечер добрый, товарищи. Вопрос у меня в общем-то теоретический и, наверное, размытый, общий. Когда и где следует использовать механизм исключительных ситуаций? Как лучше всего их обрабатывать? Когда и где этот механизм использовать НЕ стоит? Если возможно, с примерами. К Страуструпу посылать не надо – читал.
C++ Чем отличаются объявления const char* и const* char
Прошу объяснить мне, чем отличаются объявления const char* и const* char и как объявить: указатель на константный массив символов, константный указатель на массив символов, указатель на массив константных символов. Просто совсем запутался в определениях, прошу помощи Использую книгу Стефана Р. Дэвиса "Программирование на С++ для чайников". Тема в книга описана, но, я понять не смог
C++ Телефонные номера, которые набираются на кнопочном телефоне ходом коня http://www.cyberforum.ru/cpp-beginners/thread1236897.html
Динамическое программирование Ход конем (Время: 1 сек. Память: 16 Мб) Шахматная ассоциация решила оснастить всех своих сотрудников такими телефонными номерами, которые бы набирались на кнопочном телефоне ходом коня. Например, ходом коня набирается телефон 340-49-27. При этом телефонный номер не может начинаться ни с цифры 0, ни с цифры 8. Требуется написать программу, определяющую...
C++ А как ваше начальство относится к новым стандартам и boost? Разрешают ли вам использовать С++11, boost? Если нет - чем обосновывают. Если сначала нет, потом да - расскажите как этого добились. Здесь же можно указывать и в какой IDE работаете. Просьба отвечать лишь тех, кто работает в корпоративном секторе. подробнее

Показать сообщение отдельно
Mustang_Mus
3 / 3 / 0
Регистрация: 31.07.2014
Сообщений: 17
01.08.2014, 15:10  [ТС]     Идентификаторы: createHanningWindow и phaseCorrelate не найдены
Добавил линковки для всех необходимых модулей, как написано тут:
http://robocraft.ru/blog/computervision/700.html

В итоге получилось вот что:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
    
    #include "stdafx.h"
 
    #include <opencv2/opencv.hpp>
 
    #ifdef _MSC_VER
    # if CV_MAJOR_VERSION == 2 && CV_MINOR_VERSION == 3 && CV_SUBMINOR_VERSION == 1
    // OpenCV 2.3.1
    #  if defined(_DEBUG)
    #  pragma comment(lib, "opencv_core231d.lib")
    #  pragma comment(lib, "opencv_highgui231d.lib")
    #  pragma comment(lib, "opencv_imgproc231d.lib")
    #  pragma comment(lib, "opencv_video231d.lib")
    #  pragma comment(lib, "opencv_ml231d.lib")
 
    #  pragma comment(lib, "opencv_calib3d231d.lib")
    #  pragma comment(lib, "opencv_objdetect231d.lib")
    #  pragma comment(lib, "opencv_features2d231d.lib")
    #  pragma comment(lib, "opencv_contrib231d.lib")
    #  pragma comment(lib, "opencv_ts231d.lib")
    #  pragma comment(lib, "opencv_legacy231d.lib")
    #  pragma comment(lib, "opencv_flann231d.lib")
    #  pragma comment(lib, "opencv_gpu231d.lib")
    # else
    #  pragma comment(lib, "opencv_core231.lib")
    #  pragma comment(lib, "opencv_highgui231.lib")
    #  pragma comment(lib, "opencv_imgproc231.lib")
    #  pragma comment(lib, "opencv_video231.lib")
    #  pragma comment(lib, "opencv_ml231.lib")
 
    #  pragma comment(lib, "opencv_calib3d231.lib")
    #  pragma comment(lib, "opencv_objdetect231.lib")
    #  pragma comment(lib, "opencv_features2d231.lib")
    #  pragma comment(lib, "opencv_contrib231.lib")
    #  pragma comment(lib, "opencv_ts231.lib")
    #  pragma comment(lib, "opencv_legacy231.lib")
    #  pragma comment(lib, "opencv_flann231.lib")
    #  pragma comment(lib, "opencv_gpu231.lib")
    # endif //#  if defined(_DEBUG)
 
    # endif //# if CV_MAJOR_VERSION == 2 && CV_MINOR_VERSION == 3
    #endif //#ifdef _MSC_VER
 
 
    #include "opencv2/core/core.hpp"
    #include "opencv2/highgui/highgui.hpp"
    #include "opencv2/imgproc/imgproc.hpp"
 
    using namespace cv;
 
    int main(int, char* [])
    {
        // Создание видеопотока с камеры
        VideoCapture video(0);
        Mat frame, curr, prev, curr64f, prev64f, hann;
        int key = 0;
 
        do
        {
            video >> frame; // Очередной фрейм
            cvtColor(frame, curr, CV_RGB2GRAY); // Перевод в градации серого
 
            if(prev.empty())
            {
                prev = curr.clone(); // клонирование изображения
                createHanningWindow(hann, curr.size(), CV_64F); // Создание окна Ханна
            }
 
            prev.convertTo(prev64f, CV_64F);
            curr.convertTo(curr64f, CV_64F);
 
            Point2d shift = phaseCorrelate(prev64f, curr64f, hann); // Фазовая корреляция
            double radius = cv::sqrt(shift.x*shift.x + shift.y*shift.y); // Вычисление радиуса отклонения
 
            if(radius > 5)
            {
                // вывод на экран окружности и направления смещения
                Point center(curr.cols >> 1, curr.rows >> 1);
                cv::circle(frame, center, (int)radius, cv::Scalar(0, 255, 0), 3, CV_AA);
                cv::line(frame, center, Point(center.x + (int)shift.x, center.y + (int)shift.y), cv::Scalar(0, 255, 0), 3, CV_AA);
            }
 
            imshow("phase shift", frame);
            key = waitKey(2);
 
            prev = curr.clone();
        } while((char)key != 27); // Esc to exit...
 
        return 0;
    }
А компилятор всё равно выдаёт те же ошибки:
error C3861: createHanningWindow: идентификатор не найден
error C3861: phaseCorrelate: идентификатор не найден
 
Текущее время: 11:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru