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

korbofos

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

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

  • Посещение

Репутация

1 Новичек

О korbofos

  • Звание
    Новичок
  1. Как прикрутить OpenCV к билдеру?

    Сделал вывод на TPanel заработало, большое спасибо Smorodov'у. Но через некоторое время вылетает ошибка "Bad argument(unrecognized or unsupported array type) in function cvReleseData, .\cxaray.cpp(1171)" __fastcall Man_screen::Man_screen(bool CreateSuspended) : TThread(CreateSuspended) { FreeOnTerminate = true; capture = cvCreateCameraCapture(0); if(capture != NULL) { frame = NULL; scaled = NULL; sz.width=320; sz.height=240; scaled=cvCreateImage(sz,IPL_DEPTH_8U,3); cvInitFont(&font, CV_FONT_HERSHEY_COMPLEX_SMALL, 1.0, 1.0); } } //--------------------------------------------------------------------------- void __fastcall Man_screen::Execute() { if(capture == NULL)return; while(man->work_man) { frame = cvQueryFrame(capture); cvResize(frame,scaled,CV_INTER_LINEAR); APIDrawIpl(scaled,Form1->Screen->Handle); //man->screen_ready=true; cvWaitKey(33); } cvReleaseCapture(&capture); cvReleaseImage( &frame); } Подскажите в чём дело?
  2. vcl компонент OpenCV

    С++ Builder не получается вывести кадр на компонент TImage, нашёл пример на робофоруме но он зависает //global CvCapture *capture; IplImage *frame; CvFont font; CvSize sz; IplImage *scaled; void __fastcall TForm1::Button1Click(TObject *Sender) { capture = NULL; frame = NULL; capture = cvCreateCameraCapture(0); cvInitFont(&font, CV_FONT_HERSHEY_COMPLEX_SMALL, 1.0, 1.0); sz.width=320; sz.height=240; scaled=cvCreateImage(sz,IPL_DEPTH_8U,3); frame = cvQueryFrame(capture); cvResize(frame,scaled,CV_INTER_LINEAR); ShowImage(Screen,scaled); } void __fastcall TForm1::ShowImage(TImage *bimg, IplImage *iimg) { byte *ptr; long int adr; long int datastep=iimg->widthStep; long int height=iimg->height; char *rawdata=iimg->imageDataOrigin; for(int y=0; y<height; y++) { ptr=(byte *) bimg->Picture->Bitmap->ScanLine[y]; // зависает здесь adr=(height-1-y)*datastep; memcpy(ptr,rawdata+adr,datastep); } bimg->Canvas->Pixels[0][0]=0; } Подскажите пожалуйсто в чём может быть дело?
×