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

kudukSweetone

Пользователи
  • Количество публикаций

    31
  • Зарегистрирован

  • Посещение

  • Days Won

    1

kudukSweetone last won the day on March 16 2011

kudukSweetone had the most liked content!

Репутация

3 Новичек

О kudukSweetone

  • Звание
    Эксперт
  1. Целая куча ошибок такого плана: 1>simpleqtapp.obj : error LNK2001: неразрешенный внешний символ ""public: virtual class cv::Mat & __thiscall cv::_OutputArray::getMatRef(int)const " (?getMatRef@_OutputArray@cv@@UBEAAVMat@2@H@Z)" 1>simpleqtapp.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall cv::_OutputArray::create(int,int const *,int,int,bool,int)const " (?create@_OutputArray@cv@@UBEXHPBHHH_NH@Z)" 1>simpleqtapp.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall cv::_OutputArray::create(int,int,int,int,bool,int)const " (?create@_OutputArray@cv@@UBEXHHHH_NH@Z)" 1>simpleqtapp.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall cv::_OutputArray::create(class cv::Size_<int>,int,int,bool,int)const " (?create@_OutputArray@cv@@UBEXV?$Size_@H@2@HH_NH@Z)" 1>simpleqtapp.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall cv::_OutputArray::release(void)const " (?release@_OutputArray@cv@@UBEXXZ)" 1>simpleqtapp.obj : error LNK2001: неразрешенный внешний символ ""public: virtual void __thiscall cv::_OutputArray::clear(void)const " (?clear@_OutputArray@cv@@UBEXXZ)" Походу накрылась моя студия, настройки проекта не держит. Спасибо всем, буду разбираться.
  2. Примерно так и делаю. Вот этот код Smorodov написал в одном из веток форума (у меня не фурычит): ///////////////////////////////////////////Пример №1 через cv::Mat/////////////////////////////////////////////////// void Research::LoadImage() { QString fileName = QFileDialog::getOpenFileName(this, QString::fromWCharArray(L"Открыть файл")); QString fileName = QFileDialog::getOpenFileName(this); if (!fileName.isEmpty()) loadFile(fileName); if (fileName != "") { Mat img=imread(fileName.toStdString(),1); QImage i=Mat2QImage((Mat3b)img); QPixmap pm = QPixmap::fromImage(i); ui.ImageFrame->setScaledContents(true); ui.ImageFrame->setPixmap(pm); } QImage Mat2QImage(const cv::Mat3b &src) { QImage dest(src.cols, src.rows, QImage::Format_ARGB32); for (int y = 0; y < src.rows; ++y) { const cv::Vec3b *srcrow = src[y]; QRgb *destrow = (QRgb*)dest.scanLine(y); for (int x = 0; x < src.cols; ++x) { destrow[x] = qRgba(srcrow[x][2], srcrow[x][1], srcrow[x][0], 255); } } return dest; } QImage Mat2QImage(const cv::Mat_<double> &src) { double scale = 255.0; QImage dest(src.cols, src.rows, QImage::Format_ARGB32); for (int y = 0; y < src.rows; ++y) { const double *srcrow = src[y]; QRgb *destrow = (QRgb*)dest.scanLine(y); for (int x = 0; x < src.cols; ++x) { unsigned int color = srcrow[x] * scale; destrow[x] = qRgba(color, color, color, 255); } } return dest; } //////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////Пример №2 через IplImage///////////////////////////// void Research::LoadImage(IplImage *cvimage) { int cvIndex, cvLineStart; switch (cvimage->depth) { case IPL_DEPTH_8U: switch (cvimage->nChannels) { case 3: if ( (cvimage->width != image.width()) || (cvimage->height != image.height()) ) { QImage temp(cvimage->width, cvimage->height, QImage::Format_RGB32); image = temp; } cvIndex = 0; cvLineStart = 0; for (int y = 0; y < cvimage->height; y++) { unsigned char red,green,blue; cvIndex = cvLineStart; for (int x = 0; x < cvimage->width; x++) { // DO it red = cvimage->imageData[cvIndex+2]; green = cvimage->imageData[cvIndex+1]; blue = cvimage->imageData[cvIndex+0]; image.setPixel(x,y,qRgb(red, green, blue)); cvIndex += 3; } cvLineStart += cvimage->widthStep; } break; default: printf("This number of channels is not supported\n"); break; } break; default: printf("This type of IplImage is not implemented in QOpenCVWidget\n"); break; } ui.ImageFrame->setPixmap(QPixmap::fromImage(image)); } Пример №2 нашел на одном из многочисленных забугорных форумов посвященной этой теме. Некоторые пишут работает, у других этот же код не фурычит. P.S.: Причем прикрутить видеопоток с камеры через OpenCV в QT у меня без проблем получается, пару строчек кода, а вот с отдельной картинкой получается что не получается. Оба примера не фурычат и у меня. Может библиотек каких не хватает, а может руки не от туда растут Вообщем c QT если кто знаком, будьте добры закиньте код из этого сообщения в каркасный проект выложенный мной выше и проверьте на работоспособность. Хотелось бы с этой темой раз и навсегда покончить.
  3. У меня интеграция QT в VS 2008. Интерфейс соорудил самостоятельно с помощью QT Designer, так как люблю растаскивать элементы GUI самостоятельно, а не по координатам или вообще автоматом куда системе удобнее. Каркас рабочий, то есть открываете солюшен-файл и если у вас установлена интеграция QT в Visual Studio (как у меня) проблем не будет, компилируете и любуетесь интерфейсом (в архивчике что я скинул, в папке debug можно запустить .ехе полюбоваться пока без функционала).
  4. Вообщем соорудил я интерфейс в QT (в прикрепленном файле) и все функции подготовил. Теперь просьба к разбирающимся в стыковке изображений QT + OpenCV: пожалуйста помогите ОpenCVшный формат изображения загружаемый через Mat или IplImage, кому как удобнее, подружить с QTшным Frame или TextLabel (чтобы картинка загружалась). Бьюсь с этим делом но ничего не выходит ResearchAlg.rar
  5. Слишком как-то наворочено, попроще бы. Что-нибудь самодельное, простенький интерфейс и штук десять кнопок с основными функциями. Чем проще тем лучше. Неужели ни у кого нет?
  6. Мне кажется многим начинающим данная тема очень может пригодится. Дело вот в чем: В университете написал прогу у которой с одной стороны загружается изображение, а с другой стороны множество кнопочек, на каждую кнопочку завязана определенная часто используемая функция, например cvErode, cvDilate, cvCanny, cvNormalize и т.д. такой подход помогает разобраться что и как работает и главное находить комбинации алгоритмов позволяющие наиболее эффективно решать определенную задачу обработки. К сожалению прога утеряна. Самому долго собирать, а вещь зачастую очень полезная - посмотреть иногда что и как работает на конкретном изображении. Кто-нибудь подобным занимался? Есть ли исходник позволяющий производить нечто подобное, какой-нибудь OpenCVшный предобработчик изображений готовый? Вообще было бы сказкой с реализацией интерфейса на QT, так как в консольном приложении все таки не очень удобно элементы управления создавать и настраивать.
  7. Дескриптор Фурье (контуры)

    Вот нашел. Про поворот мне кажется говорится более подробно в этой статье про кумулятивную угловую функцию. Фурье и Нейросеть.pdf
  8. Дескриптор Фурье (контуры)

    Собственно вот статья с описанием как можно нормировать дескрипторы с практическим применением в виде распознавания текста. Если у вас руки быстрее дойдут, пожалуйста, выложите полученный код в эту ветку. Фурье и Моменты.pdf
  9. Дескриптор Фурье (контуры)

    Я как раз закопался в литературу в изучении этой темы. Через время попытаюсь соорудить сравнение объектов на основе нормированных дескрипторов Фурье и выложить код сюда. Если кому нужна инфа по этой теме сообщите у меня есть пара статей по нормированию.
  10. Дескриптор Фурье (контуры)

    Если я правильно понял код, то вы использовали ненормированные дескрипторы Фурье? То есть если сравнивать два одинаковых объекта на основе рассчитанных дескрипторов (как в случае с моментами), и при этом один из объектов будет подвергнут некоторым аффинным преобразованиям, то классификатор их будет относить к разным классам. Поправьте если я не прав. И если коэффициенты нормировать можно ли использовать функцию MatchTemplate к ним?
  11. За SVM спасибо интересная идея. Хотелось просто с нейронкой разобраться, я как-то начитался про нее особенно про обратное распространением ошибки, вот и хотел попробовать.
  12. Добрый день! Я занимаюсь анализом и распознаванием клеток крови. На данный момент сформировал большую базу состоящую из 15 параметров описывающих объекты исследования и теперь есть необходимость всю эту базу обработать, а объекты классифицировать. Уважаемый Smorodov, а не встречался ли вам на просторах сети открытых исходников нейронной сети обученной или готовой к обучению для распознавания различных биологических объектов (клеток)? Желательно написанную на С++
  13. OpenCV и QT проблема с IplImage

    Smorodov можете посмотреть мой проект из вашего кода (в прикрепленном), с MyLabel чего-то я напутал - не запускается. SimpleQTApp.rar
  14. OpenCV и QT проблема с IplImage

    Братцы, кто QT занимался дайте совет дельный что делать. Вот у меня имеется листинг рабочий который ищет окружности на изображении. Проблемка вырисовывается в том, что в программке используется IplImage а в QT свой формат для изображений. Подскажите может сталкивался кто, как сделать чтобы результаты моей проги отображались в Qtшных Textlabel или frame. То есть как перегнать из iplimage в понятный QT формат? Интерфейс я QT Designer накидал, а вот вся обработка изображений на OpenCVшных функциях, неувязачка. Может есть у кого хотя бы проектик небольшой - чтобы по нажатию кнопки открывалось изображение iplimage и в textlabel загружалось? Буду знать хоть от чего плясать. Circle.txt
  15. Центр тяжести и оси инерции

    To Smorodov: А у вас случайно не осталось листинга программы изображенной на скриншоте второй страницы вот этой вот статьи? (в прикрепленном файле) Написано, что это программа обнаружения луча лазерной указки со снятыми ограничениями по размеру луча. Это как раз то, что мне нужно - там угол наклона главной оси прорисован и описан эллипс. О моментах контура.pdf
×