Перейти к содержимому
Compvision.ru
Sergey1985

Преобразование типов в EmguCV

Recommended Posts

Доброго времени суток. Возник вопросик. Пытаюсь разобраться с EmguCV нашел код для работы с web камерой

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

//Подключаем библиотеки
using Emgu.CV;
using Emgu.CV.UI;
using Emgu.Util;
using Emgu.CV.CvEnum;
using Emgu.CV.Structure;



namespace EmguCV
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        Capture myCapture = new Capture();
 
        private void GetVideo(object sender, EventArgs e)
        {
            //Берем кадр
            Image<Bgr, Byte> Kadr = myCapture.QueryFrame();
            //Вставляем в imageBox
            imageBox1.Image = Kadr;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
             //Делаем это безпрерывно
            Application.Idle += GetVideo;

        }
    }
}


         но получаю ошибку

D:\Программы на VisualStudio2010\EmguCV\EmguCV\Form1.cs(33,37): ошибка CS0029: Неявное преобразование типа "Emgu.CV.Mat" в "Emgu.CV.Image<Emgu.CV.Structure.Bgr,byte>" невозможно

D:\Программы на VisualStudio2010\EmguCV\EmguCV\Form1.cs(35,31): ошибка CS0029: Неявное преобразование типа "Emgu.CV.Image<Emgu.CV.Structure.Bgr,byte>" в "System.Drawing.Image" невозможно 

Гугл внятного ответа не дал, хотя как я понял ошибка до безумия распространенная. Как ее одолеть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В Emgu начиная с третей версии Image<> заменен на Mat. Пример у вас от версии 2.Х, а используете вы 3.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И еще то что касается третьей версии. В папке opencv\build\x86\vc11\bin лежат всего три dll файла в отличие от предыдущих версий где их было значительно больше. Как это объясняется? И подскажите еще пожалуйста где можно скачать OpenCV2.4.14 и EmguCV той же версии. (на сайте можно скачать только OpenCV2.4.11)  Я пользуюсь OpenCV2.4.9 в этой версии нет функции   PyrLkRobustMotionEstimator .  

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Emgu есть не для всех версий opencv. Много функцией есть не выведенных в  Mat или Image, а существующих только в классе invwork, посмотрите может там есть нужная функция.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×