基于DSP的嵌入式智能相機的研究
2.2 OpenCV
OpenCV(Open Source Computer Vision Library)是一個(gè)基于開(kāi)源的跨平臺計算機視覺(jué)庫,可以運行在Linux、Windows和Mac OS操作系統上。它輕量級而且高效——由一系列C函數和少量C++類(lèi)構成,同時(shí)提供了Python,Ruby,Matlab等語(yǔ)言的接口,實(shí)現了圖像處理和計算機視覺(jué)方面的很多通用算法。OpenCV提供的視覺(jué)處理算法非常豐富,并且它部分以C語(yǔ)言編寫(xiě),加上其開(kāi)源的特性,處理得當,不需要添加新的外部支持也可以完整的編譯鏈接生成執行程序,所以用它來(lái)做算法的移植很方便,OpenCV的代碼經(jīng)過(guò)適當改寫(xiě)可以正常的運行在DSP系統和單片機系統中。OpenCV主體分為5個(gè)模塊,其中4個(gè)模塊如圖5所示。OpenCv的CV模塊包含基本的圖像處理函數和高級的計算機視覺(jué)算法。ML是機器學(xué)習庫,包含一些基于統計的分類(lèi)和聚類(lèi)工具。HighGUI包含圖像和視頻輸入/輸出的函數。CXCore包含OpenCV的一些基本數據結構和相關(guān)函數。本文引用地址:http://dyxdggzs.com/article/148046.htm
2.3 程序設計流程
相機通過(guò)RS 232串口把編譯好的U_Boot和μCLinux鏡像文件燒寫(xiě)到里面的FLASH中,然后通過(guò)Eclipse集成開(kāi)發(fā)環(huán)境進(jìn)行應用軟件設計。本設計實(shí)現了一個(gè)簡(jiǎn)單的應用,可以通過(guò)智能相機來(lái)檢測條形碼。流程圖如圖6所示。
在圖像處理模塊中,主要包含了圖像圖像預處理,分析條形碼黑白條寬度,判斷條形碼類(lèi)別,最后識別出條形碼并且顯示條形碼數據,流程框圖如圖7所示。
評論