• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 消費電子 > 設計應用 > 基于1394總線的工業相機圖像采集程序設計

    基于1394總線的工業相機圖像采集程序設計

    作者: 時間:2009-12-16 來源:網絡 收藏

    首先,定義類CDib,并在CPictureTestDoc.h中定義共有變量:
    CDibm_dib;//CDib類對象,用于位圖文件的讀寫
    然后,在CPictureTestDoc.cpp文件中添加功能函數:PictureRead(),在其中加入代碼:
    CStringstrPathName;
    strPathName=_T(TestPicture.bmp);
    if(m_dib.Read(strPathName)==TRUE)

    SetModifiedFlag(FALSE);//startoffwithunmodified
    return;

    并在CPictureTestView.cpp文件中的OnDraw(CDC*pDC)函數中,加入如下代碼:
    CPictureTestDoc*pDoc=GetDocument();
    CDib*pDib=pDoc->GetPDib();//返回m_dib的指針
    CSizesizeFileDib=pDib->GetDimensions();//獲取DIB的尺寸
    pDib->Draw(pDC,CPoint(0,0),sizeFileDib);//顯示DIB
    在OnInitialUpdate()函數中設置滾動窗口:
    CDib*pDib=pDoc->GetPDib();//獲取DIB的指針
    if(pDib!=NULL)
    SetScrollSizes(MM_TEXT,pDib->GetDimensions());//根據DIB尺寸設置視窗大小
    最后,添加命令菜單,其響應函數為:
    voidCPictureTestView::OnTestStart()

      CPictureTestDoc*pDoc=GetDocument();
      pDoc->;pictureGrab();//抓圖
      pDoc->;pictureRead();//把讀入內存
      OnInitialUpdate();//設置滾動窗口

    編譯通過后,單擊命令,即可實時獲取圖像。

    圖1圖像實例
    Fig.1Theexampleofimageacquisition

    2.4設置
    在圖像采集時,我們往往需要對的參數如圖像格式、分辨率、幀頻等進行設定,同時,為了獲取高品質圖像,我們還需要做白平衡調節。當然,這些參數的設定我們可以在初始化時由代碼實現,但是,在實際應用中,為了達到最佳效果,我們需要多次調試才能達成,如果采用修改代碼的方法,調試過程會很麻煩。數碼相機一般都有設置菜單,我們要做的就是,通過代碼來調用相機的設置菜單,設置好參數后,參數會自動保存并加載。這樣,調試的時候會方便很多。創建相機設置菜單命令,其響應函數如下:
    voidCPictureTestDoc::OnTestCameraset()

    pgrcamguiToggleSettingsWindowState(
    m_guicontext,AfxGetApp()->m_pMainWnd->GetSafeHwnd());//相機設置對話框


    圖2相機參數設置界面
    Fig.2Fig.4.2Interfaceforsettingtheparameterofthecamera

    3結論
    本文實現的圖像采集系統可通過1394接口對數碼機進行格式/模式/幀率的設置,光學參數的設定,采集畫面的實時顯示,而且能夠對攝像機進行自動控制,系統穩定可靠,利用它可以完成一些復雜項目中的實時連續的圖像采集過程,如高速公路車輛和車牌的自動識別管理系統、生產中的產品外包裝檢測系統等,具有很大的實用性.

    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 康定县| 衡南县| 慈溪市| 贵德县| 剑阁县| 天津市| 闸北区| 夏津县| 文昌市| 云龙县| 阳新县| 马关县| 宾阳县| 鄂伦春自治旗| 凤翔县| 湖口县| 灌南县| 商城县| 泽州县| 建宁县| 大渡口区| 临江市| 南充市| 得荣县| 炎陵县| 明光市| 峡江县| 丹阳市| 边坝县| 吉首市| 霍邱县| 芷江| 阜康市| 高邮市| 霍邱县| 迁西县| 云和县| 肥乡县| 高雄市| 东莞市| 平和县|