C 中使用OPenCV Emgu 心得

本文分享了作者在VS2010+OpenCV2.2环境下解决win7摄像头bug的经验,提供了修改`precomp.hpp`文件的解决办法。此外,文章还介绍了如何使用Emgu CV进行图片保存和视频打开,并分享了老师的人工智能教程链接。通过实例展示了在C#中使用OpenCV进行图像处理,包括灰度化、Canny边缘检测等操作。
摘要由CSDN通过智能技术生成

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

關於VS2010+openCV2.2在win7下 有webcam bug

  • 本人是研究生 目前在做機器人的SLAM 有幸使用VS2010

    之前裝好opencv 遇到一個問題就是除了webcam沒有畫面外 其他的code 順利運行

    這幾天找很久 卻發現在台灣只能在網路上找答案 卻很少人PO指導文跟問題經驗分享

    找的答案與教學文大都是從中國找到  所以我在這裡提供一個經驗給大家 

    PS.最好下載OpenCV-2.2.0-win.zip  (需要編譯的) 不是OpenCV-2.2.0-win32-vs2010.exe

     win7與openCV 2.2 有一個bug  編譯前要修改一個檔案

    $(安裝OpenCV目錄)\modules\highgui\src\precomp.hpp

    再找到:

    #if !defined WIN32 && !defined _WIN32

    #include "cvconfig.h"
    #else
    void  FillBitmapInfo( BITMAPINFO* bmi, int width, int height, int bpp, int origin );
    #endif


    取代成:

    #include "cvconfig.h"

    #if defined WIN32 || defined _WIN32
    void  FillBitmapInfo( BITMAPINFO* bmi, int width, int height, int bpp, int origin );
    #endif

    這樣就可以照官網編譯成功 並且webcam可以擷取畫面成功

     



所有回覆

  • 2011年5月15日 上午 10:48
     
     

    您好:

    我是準備要做機器人相關 SLAM技術

    要在windows底下開發APP 所以採用VS2010 + opencv + EnguCV

    可是最主要webcam 畫面卻一直跑不出來

    實驗環境

    OS:windows 7 32 bit

    CPU:AMD Athlon 64x2 3800+

    RAM:DDR 400 1G

    WebCam: LifeCam studio

    IDE:VS2010

    首先是先測試OpenCV + C++

    官網提供的測試範例 基本上都可以執行 所以在設定opencv應該是沒有問題

    不過要測試別人寫的webcam

     

    #include "stdafx.h"
    #include "cv.h"
    #include "highgui.h"
    int _tmain(int argc, _TCHAR* argv[])
    {
     
     IplImage* pImg; //聲明IplImage指針
            cvNamedWindow( "Camera", 1 );
     
            CvCapture *capture;
     int c; 
        
     capture = cvCaptureFromCAM(0);
     if(!capture)
    return -1;
    else
            printf("Camera is OK! \n");

    while(true){
     if(cvGrabFrame(capture)){
    pImg = cvRetrieveFrame(capture);
    cvShowImage( "Camera", pImg );
    }
    //等待ESC按鍵按下則結束
    if(cvWaitKey(10) == 27)
    break;
    } // end of while 
      cvWaitKey(0);

           cvDestroyWindow( "Camera" );//銷毀視窗

    cvReleaseCapture( &capture );  
    return 0;
    }

    卻會一直出現灰色 畫面顯示不出來 我換用Ubuntu+Qtcreator 卻沒問題 成功有畫面

    到底是出在OS?? VS2010??  起初以為是webcam支援性問題 因為可以在其他OS下執行就排除

     

    最後在試EnguCV+C# 也是一樣...範例基本上都沒問題可以執行 就是關於webcam功能都

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值