機器視覺檢測系統的制作方法
【專利摘要】本發明涉及機器視覺領域,公開一種機器視覺檢測系統,用于快速、準確地檢測出具有LBP(Local Binary Patterns,局部二值模式)特征集的目標物。所述機器視覺檢測系統工作流程包括:FPGA(Field?Programmable Gate Array,現場可編程門陣列)控制與處理模塊下達光強檢測命令后,根據光強檢測模塊檢測到的環境光強信號調整攝像頭模塊的曝光時間。攝像頭模塊有序地采集每幀圖像并輸入到FPGA控制與處理模塊,進行圖像預處理、圖像金字塔建立以及使用固定大小的檢測窗口,調用串并聯結構的LBP特征級聯分類器對圖像金字塔各層圖像進行目標物的檢測,獲取圖像中不同尺度的目標物區域。最后合并相同位置的目標物區域,刪除誤檢的區域,并且將檢測結果上傳至上位機模塊。
【專利說明】
機器視覺檢測系統
技術領域
[0001 ]本發明設及機器視覺技術領域,特別設及一種機器視覺檢測系統。
【背景技術】
[0002] 機器視覺檢測是模式識別和人工智能中的一項基本研究內容,在人臉檢測、視頻 檢索、智能監控跟蹤和人機交互等領域中有著廣泛的應用。機器視覺檢測的目的是在圖像 中檢測具有特定特征的目標物是否存在,若存在則給出目標物所在的區域位置及區域大 小。通常,機器視覺檢測分為Ξ個步驟:①基于特定特征與算法,對目標物構建分類器;②采 用圖像采集系統,獲取待檢測的可能包含目標物的圖像;③在待檢測的圖像中提取目標物 對應的特定特征,使用分類器對目標物進行檢測。
[0003] 對于步驟①,目前對目標物構建分類器的代表性算法是Yoav Freund和Robed Schapire提出的AdaBoost (Adaptive Boosting,自適應提升)算法。AdaBoost算法的核屯、 思想是針對同一個訓練集,基于特定特征,訓練分類能力一般的弱分類器,然后將運些弱分 類器進行級聯,構建一個強分類器,使其具有更強的分類能力。目前,將數量充足、特征明顯 的樣本圖片數據作為訓練集輸入到計算機,運行AdaBoost算法計算分類器的構建參數的方 法較為成熟。基于haar特征或者LBP特征,使用AdaBoost算法構建的人臉分類器、人眼分類 器等在實際應用中體現出優異的檢測精度。
[0004] 對于步驟②,獲取高質量、信息量豐富的圖像,是保證后續對目標物進行精確檢測 的前提。通常,單攝像頭的采集區域有限,在大區域檢測應用方面有一定的制約性。另一方 面,光照對目標物的檢測結果有很大的影響。現有圖像采集系統的曝光時間固定不變或者 拍攝前人為設定,不能很好地適應外部環境的光強變化。因此存在環境光強變化使圖像質 量下降,對檢測干擾嚴重的缺陷。
[0005] 對于步驟③,在圖像中提取目標物對應的特定特征,利用目標物分類器對其進行 檢測。現有的機器視覺檢測系統使用由AdaBoost算法構建的分類器對目標物進行檢測能夠 保證足夠的檢測精度,但由于系統算法復雜,遍歷整個圖像的運算量大,在實際應用中對硬 件要求高,檢測速度得不到保障。
【發明內容】
[0006] 本發明的主要目的是提供一種機器視覺檢測系統,旨在實現對目標物進行高精 度、快速的檢測。
[0007] 為實現上述目的,本發明提出了一種機器視覺檢測系統,所述機器視覺檢測系統 包括FPGA (Field-Programmable Gate Array,現場可編程口陣列)控制與處理模塊、光強 檢測模塊、攝像頭模塊、圖像緩存模塊、通信接口模塊、上位機模塊;所述光強檢測模塊、所 述攝像頭模塊、所述圖像緩存模塊、所述通信接口模塊都與所述FPGA控制與處理模塊電連 接;所述通信接口模塊與所述上位機模塊電連接。
[000引所述光強檢測模塊,用于檢測所述攝像頭模塊拍攝的環境的光強并轉換成對應的 光強信號輸入至所述FPGA控制與處理模塊。
[0009] 所述攝像頭模塊,用于采集圖像并轉換成對應的圖像數據輸入至所述FPGA控制與 處理模塊;根據檢測區域的大小,所述攝像頭模塊采用單攝像頭或多攝像頭兩種方式;在多 攝像頭方式下,所有攝像頭按特定方式安置,確保同時采集相鄰區域的圖像,使之比單攝像 頭方式下采集更大區域范圍的圖像。
[0010] 所述圖像緩存模塊,用于緩存所述攝像頭模塊采集的圖像的灰度化數據,解決圖 像采集與圖像處理對圖像數據存取時間不一致的沖突。
[0011] 所述通信接口模塊,用于對所述FPGA控制與處理模塊和所述上位機模塊之間傳輸 的信號進行電平轉換。
[0012] 所述上位機模塊,用于顯示所述機器視覺檢測系統的檢測結果,包括目標物所在 區域位置和目標物所在區域大小。
[0013] 所述FPGA控制與處理模塊,用于配置所述攝像頭模塊的參數,給所述光強檢測模 塊下達檢測使能信號并且通過檢測反饋的光強信號配置所述攝像頭模塊的曝光時間;然后 將所述攝像頭模塊采集的圖像進行數據格式轉換、緩存至所述圖像緩存模塊W及進行目標 物檢測;當所述攝像頭模塊采用多攝像頭方式時,進行目標物檢測前需要將相鄰攝像頭拍 攝的圖像的邊緣進行拼接,使相鄰攝像頭拍攝的交界區域都能進行有效的目標物檢測;最 后將檢測結果通過所述通信接口模塊上傳至所述上位機模塊進行顯示。
[0014] 所述FPGA控制與處理模塊包括光強檢測使能模塊、攝像頭配置模塊、圖像格式轉 換模塊、圖像緩存控制模塊、圖像拼接使能模塊、圖像拼接模塊、圖像金字塔模塊、LBP 化ocal Bina巧Patterns,局部二值模式)特征級聯分類器模塊、目標區域處理模塊、通信 接口控制模塊;所述光強檢測使能模塊與所述光強檢測模塊的輸入端連接,所述光強檢測 模塊的輸出端經所述攝像頭配置模塊與所述攝像頭模塊的輸入端連接,所述攝像頭模塊的 輸出端經所述圖像格式轉換模塊與所述圖像緩存控制模塊的輸入端連接,所述圖像緩存控 制模塊與所述圖像緩存模塊進行雙向傳輸,所述圖像緩存控制模塊的輸出端經所述圖像拼 接模塊與所述圖像金字塔模塊的輸入端連接,所述圖像拼接使能模塊與所述圖像拼接模塊 連接,所述圖像金字塔模塊的輸出端經所述LBP特征級聯分類器模塊與所述目標區域處理 模塊的輸入端連接,所述目標區域處理模塊的輸出端與所述通信接口控制模塊的輸入端連 接,所述通信接口控制模塊與所述通信接口模塊進行雙向傳輸。
[0015] 所述光強檢測使能模塊,用于在所述機器視覺檢測系統工作時,通過給所述光強 檢測模塊下達使能信號使之工作。
[0016] 所述攝像頭配置模塊,用于配置所述攝像頭模塊的參數,W及根據所述光強檢測 模塊反饋的光強信號配置所述攝像頭模塊的曝光時間。
[0017] 所述圖像格式轉換模塊,用于將所述攝像頭模塊拍攝的圖像數據進行灰度值格式 轉換。
[0018] 所述圖像緩存控制模塊,用于控制所述圖像格式轉換模塊輸出的灰度圖像數據輸 入至所述圖像緩存模塊,W及控制所述圖像緩存模塊輸出的灰度圖像數據輸入至所述圖像 拼接模塊。
[0019] 所述圖像拼接使能模塊,用于控制所述圖像拼接模塊的工作模式。當所述攝像頭 模塊采用多攝像頭方式時,所述圖像拼接使能模塊給所述圖像拼接模塊發送使能信號;當 所述攝像頭模塊采用單攝像頭方式時,所述圖像拼接使能模塊給所述圖像拼接模塊發送非 使能信號。
[0020] 所述圖像拼接模塊,用于處理所述圖像緩存控制模塊輸出的圖像數據;當從所述 圖像拼接使能模塊接收到使能信號時,所述圖像拼接模塊將所述圖像緩存控制模塊輸出的 所述攝像頭模塊全部攝像頭同一時刻拍攝的圖像數據合并成一帖連貫且不重復、邊界拼接 縫隙不明顯的圖像數據,然后將整帖圖像數據輸出至所述圖像金字塔模塊;當從所述圖像 拼接使能模塊接收到非使能信號時,所述圖像拼接模塊將所述圖像緩存控制模塊輸出的圖 像數據直接輸出至所述圖像金字塔模塊。
[0021] 所述圖像金字塔模塊,用于將所述圖像拼接模塊輸出的每帖灰度圖按比例縮小W 構建金字塔狀排列的分辨率逐步降低的圖像集合,并且根據實際應用場合中目標物區域面 積占據整帖圖像面積的比例范圍,設置所述圖像金字塔模塊的圖像集合的上限分辨率和下 限分辨率,所述圖像金字塔模塊的各層存放分辨率不同的圖像。
[0022] 所述LBP特征級聯分類器模塊,用于使用固定大小的檢測窗口,調用串并聯結構的 LBP特征級聯分類器對所述圖像金字塔模塊的各層圖像進行目標物檢測,W獲取原始圖像 中不同尺度的目標物所在區域。
[0023] 所述目標區域處理模塊,用于將所述LBP特征級聯分類器模塊檢測到的全部目標 物所在區域按對應比例映射到原始分辨率的圖像上;在原始分辨率圖像的同一位置,利用 所述LBP特征級聯分類器模塊檢測到存在目標物的數量多于第一數量闊值時,該位置被認 為是真實目標物所在區域,合并該位置的目標物所在區域;在原始分辨率圖像的同一位置, 利用所述LBP特征級聯分類器模塊檢測到存在目標物的數量少于或等于第一數量闊值時, 該位置被認為是非目標物所在區域,刪除該位置的目標物所在區域,從而得到最終的目標 物檢測結果。
[0024] 所述通信接口控制模塊,用于在串行通信時序方式下通過所述通信接口模塊,使 所述FPGA控制與處理模塊與所述上位機模塊進行雙向通信。
[0025] 優選地,所述光強檢測模塊包括光電傳感器、信號調理電路、放大濾波電路及模數 轉換電路;所述光電傳感器與所述信號調理電路的輸入端連接,所述信號調理電路的輸出 端經所述放大濾波電路與所述模數轉換電路的輸入端連接,所述模數轉換電路的輸出端與 所述FPGA控制與處理模塊連接。
[00%]優選地,所述圖像緩存模塊采用SDRAM(Synch;ronous Dynamic Random-Access Memory,同步動態隨機存儲器)實現,所述SDRAM與所述FPGA控制與處理模塊電連接。
[0027] 優選地,所述上位機模塊采用計算機或嵌入式設備實現。
[0028] 本發明技術方案通過FPGA控制與處理模塊、光強檢測模塊、攝像頭模塊、圖像緩存 模塊、通信接口模塊、上位機模塊,形成了一種機器視覺檢測系統。本發明技術與現有技術 相比,主要區別及其效果如下。
[0029] 本發明技術方案通過引入攝像頭組合和圖像拼接技術,W適應不同檢測區域范圍 的應用場合的需要。根據檢測區域的大小,所述攝像頭模塊采用單攝像頭或多攝像頭兩種 方式。在多攝像頭方式下,所有攝像頭按特定方式安置,確保同時采集相鄰區域的圖像,使 之比單攝像頭方式下采集更大區域范圍的圖像。同時,在多攝像頭方式下,通過所述圖像拼 接模塊,將所述攝像頭模塊全部攝像頭同一時刻拍攝的圖像合并成一帖連貫且不重復、邊 界拼接縫隙不明顯的圖像,使之比單攝像頭方式下輸出更大區域范圍的整帖圖像。
[0030] 本發明技術方案通過引入反饋方式使圖像采集系統的曝光時間達到最優。所述光 強檢測模塊對所述攝像頭模塊的拍攝環境的光強進行實時檢測,根據檢測到的光強值動態 調整所述攝像頭模塊的曝光時間。具體地,在所述攝像頭模塊的曝光時間的可設置范圍內, 光強值增大時適當縮短曝光時間,光強值減小時適當增長曝光時間,使所述攝像頭模塊拍 攝的圖像質量更高,提高目標物檢測的精度。從而解決了現有圖像采集系統的曝光時間固 定不變或者拍攝前人為設定,外部環境的光強變化使圖像質量下降,對目標物檢測產生嚴 重干擾的缺陷。
[0031] 本發明技術方案把對目標物進行檢測的圖像處理集成在FPGA忍片上,通過進行硬 件并行處理W提高處理速度。具體地,采用特征數量適中、描述圖像紋理結構信息出色的 LBP特征,合理構造弱分類器的串并聯結構,使之構成強分類器;并且將待檢測的圖像按比 例縮小W構建金字塔狀排列的分辨率逐步降低的圖像集合,根據實際應用場合中目標物區 域面積占據整帖圖像面積的比例范圍,設置所述圖像金字塔模塊的圖像集合的上限分辨率 和下限分辨率,所述圖像金字塔模塊的各層存放分辨率不同的圖像,使用固定大小的檢測 窗口,調用串并聯結構的LBP特征級聯分類器對所述圖像金字塔模塊的各層圖像進行目標 物檢測,W獲取原始圖像中不同尺度的目標物區域。本發明技術方案綜合考慮FPGA內部資 源消耗及目標物檢測效果兩個因素,采用合理的串并聯處理架構,在保證足夠的檢測精度 下,獲得較高的檢測速度,同時,硬件配置成本合理。
【附圖說明】
[0032] 為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可W 根據運些附圖示出的結構獲得其他的附圖。
[0033] 圖1為本發明機器視覺檢測系統實施例的功能模塊圖。
[0034] 圖2為本發明機器視覺檢測系統實施例的光強檢測模塊圖。
[0035] 圖3為本發明機器視覺檢測系統實施例的單攝像頭采集方式示意圖。
[0036] 圖4為本發明機器視覺檢測系統實施例的多攝像頭采集方式示意圖。
[0037] 圖5為本發明機器視覺檢測系統實施例的相鄰攝像頭采集的圖像的拼接示意圖。
[0038] 圖6為本發明機器視覺檢測系統實施例的不同尺度目標物檢測的第一實施例示意 圖。
[0039] 圖7為本發明機器視覺檢測系統實施例的不同尺度目標物檢測的第二實施例示意 圖。
[0040] 圖8為本發明機器視覺檢測系統實施例的MB-LBP(Multi-Block Local Binary 化tterns,分區局部二值模式)特征值計算示意圖。
[0041] 圖9為本發明機器視覺檢測系統實施例的圖像積分圖計算示意圖。
[0042] 圖10為本發明機器視覺檢測系統實施例的LBP(Local Binary Patterns,局部二 值模式)特征強分類器的第一實施例級聯示意圖。
[0043] 圖11為本發明機器視覺檢測系統實施例的LBP特征強分類器的第二實施例級聯示 意圖。
[0044] 圖12為本發明機器視覺檢測系統實施例的LBP特征強分類器的第Ξ實施例級聯示 意圖。
[0045] 附圖標號說明:
本發明目的的實現、功能特點及優點將結合實施例,參照附圖作進一步說明。
【具體實施方式】
[0046] 下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發明的一部分實施例,而不是全部的實施例。基 于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其 他實施例,都屬于本發明保護的范圍。
[0047] 需要說明,本專利各部分內容中出現的英文縮寫都在首次使用時附帶英文全稱和 中文全稱作為解釋,而各部分內容中再次出現的英文縮寫都W此解釋作為標準。
[0048] 另外,在本發明中設及"第一"、"第二"等的描述僅用于描述目的,而不能理解為指 示或暗示其相對重要性或者隱含指明所指示的技術特征的數量。由此,限定有"第一"、"第 二"的特征可W明示或者隱含地包括至少一個該特征。另外,各個實施例之間的技術方案可 W相互結合,但是必須是W本領域普通技術人員能夠實現為基礎,當技術方案的結合出現 相互矛盾或無法實現時應當認為運種技術方案的結合不存在,也不在本發明要求的保護范 圍之內。
[0049] 本發明提出一種機器視覺檢測系統。
[0050] 參照圖1,在本發明實施例中,所述機器視覺檢測系統包括FPGA (Field- Programmable Gate Array,現場可編程口陣列)控制與處理模塊100、光強檢測模塊200、 攝像頭模塊300、圖像緩存模塊400、通信接口模塊500、上位機模塊600;所述光強檢測模塊 200、所述攝像頭模塊300、所述圖像緩存模塊400、所述通信接口模塊500都與所述FPGA控制 與處理模塊100電連接;所述通信接口模塊500與所述上位機模塊600電連接。
[0051] 其中,所述光強檢測模塊200,用于檢測所述攝像頭模塊300拍攝的環境的光強并 轉換成對應的光強信號輸入至所述FPGA控制與處理模塊100;所述攝像頭模塊300,用于采 集圖像并轉換成對應的圖像數據輸入至所述FPGA控制與處理模塊100。根據檢測區域的大 小,所述攝像頭模塊300采用單攝像頭或多攝像頭兩種方式。在多攝像頭方式下,所有攝像 頭按特定方式安置,確保同時采集相鄰區域的圖像,使之比單攝像頭方式下采集更大區域 范圍的圖像;所述圖像緩存模塊400,用于緩存所述攝像頭模塊300采集的圖像的灰度化數 據,解決圖像采集與圖像處理對圖像數據存取時間不一致的沖突;所述通信接口模塊500, 用于對所述FPGA控制與處理模塊100和所述上位機模塊600之間傳輸的信號進行電平轉換; 所述上位機模塊600,用于顯示所述機器視覺檢測系統的檢測結果,包括目標物所在區域位 置和目標物所在區域大小;所述FPGA控制與處理模塊100,用于配置所述攝像頭模塊300的 參數,給所述光強檢測模塊200下達檢測使能信號并且通過檢測反饋的光強信號配置所述 攝像頭模塊300的曝光時間。然后將所述攝像頭模塊300采集的圖像進行數據格式轉換、緩 存至所述圖像緩存模塊400 W及進行目標物檢測。當所述攝像頭模塊300采用多攝像頭方式 時,進行目標物檢測前需要將相鄰攝像頭拍攝的圖像的邊緣進行拼接,使相鄰攝像頭拍攝 的交界區域都能進行有效的目標物檢測。最后將檢測結果通過所述通信接口模塊500上傳 至所述上位機模塊600進行顯示。
[0052] 具體地,所述FPGA控制與處理模塊100包括光強檢測使能模塊110、攝像頭配置模 塊120、圖像格式轉換模塊130、圖像緩存控制模塊140、圖像拼接使能模塊150、圖像拼接模 塊151、圖像金字塔模塊160、LBP(Local Binary Patterns,局部二值模式)特征級聯分類 器模塊170、目標區域處理模塊180、通信接口控制模塊190;所述光強檢測使能模塊110與所 述光強檢測模塊200的輸入端連接,所述光強檢測模塊200的輸出端經所述攝像頭配置模塊 120與所述攝像頭模塊300的輸入端連接,所述攝像頭模塊300的輸出端經所述圖像格式轉 換模塊130與所述圖像緩存控制模塊140的輸入端連接,所述圖像緩存控制模塊140與所述 圖像緩存模塊400進行雙向傳輸,所述圖像緩存控制模塊140的輸出端經所述圖像拼接模塊 151與所述圖像金字塔模塊160的輸入端連接,所述圖像拼接使能模塊150與所述圖像拼接 模塊151連接,所述圖像金字塔模塊160的輸出端經所述LBP特征級聯分類器模塊170與所述 目標區域處理模塊180的輸入端連接,所述目標區域處理模塊180的輸出端與所述通信接口 控制模塊190的輸入端連接,所述通信接口控制模塊190與所述通信接口模塊500進行雙向 傳輸。
[0053] 其中,所述光強檢測使能模塊110,用于在所述機器視覺檢測系統工作時,通過給 所述光強檢測模塊200下達使能信號使之工作;所述攝像頭配置模塊120,用于配置所述攝 像頭模塊300的參數,W及根據所述光強檢測模塊200反饋的光強信號配置所述攝像頭模塊 300的曝光時間;所述圖像格式轉換模塊130,用于將所述攝像頭模塊300拍攝的圖像數據進 行灰度值格式轉換;所述圖像緩存控制模塊140,用于控制所述圖像格式轉換模塊130輸出 的灰度圖像數據輸入至所述圖像緩存模塊400, W及控制所述圖像緩存模塊400輸出的灰度 圖像數據輸入至所述圖像拼接模塊151;所述圖像拼接使能模塊150,用于控制所述圖像拼 接模塊151的工作模式。當所述攝像頭模塊300采用多攝像頭方式時,所述圖像拼接使能模 塊150給所述圖像拼接模塊151發送使能信號。當所述攝像頭模塊300采用單攝像頭方式時, 所述圖像拼接使能模塊150給所述圖像拼接模塊151發送非使能信號;所述圖像拼接模塊 151,用于處理所述圖像緩存控制模塊140輸出的圖像數據。當從所述圖像拼接使能模塊150 接收到使能信號時,所述圖像拼接模塊151將所述圖像緩存控制模塊140輸出的所述攝像頭 模塊300全部攝像頭同一時刻拍攝的圖像數據合并成一帖連貫且不重復、邊界拼接縫隙不 明顯的圖像數據,然后將整帖圖像數據輸出至所述圖像金字塔模塊160。當從所述圖像拼接 使能模塊150接收到非使能信號時,所述圖像拼接模塊151將所述圖像緩存控制模塊140輸 出的圖像數據直接輸出至所述圖像金字塔模塊160;所述圖像金字塔模塊160,用于將所述 圖像拼接模塊151輸出的每帖灰度圖按比例縮小W構建金字塔狀排列的分辨率逐步降低的 圖像集合,并且根據實際應用場合中目標物區域面積占據整帖圖像面積的比例范圍,設置 所述圖像金字塔模塊160的圖像集合的上限分辨率和下限分辨率,所述圖像金字塔模塊160 的各層存放分辨率不同的圖像;所述LBP特征級聯分類器模塊170,用于使用固定大小的檢 測窗口,調用串并聯結構的LBP特征級聯分類器對所述圖像金字塔模塊160的各層圖像進行 目標物檢測,W獲取原始圖像中不同尺度的目標物所在區域;所述目標區域處理模塊180, 用于將所述LBP特征級聯分類器模塊170檢測到的全部目標物所在區域按對應比例映射到 原始分辨率的圖像上;在原始分辨率圖像的同一位置,利用所述LBP特征級聯分類器模塊 170檢測到存在目標物的數量多于第一數量闊值時,該位置被認為是真實目標物所在區域, 合并該位置的目標物所在區域;在原始分辨率圖像的同一位置,利用所述LBP特征級聯分類 器模塊170檢測到存在目標物的數量少于或等于第一數量闊值時,該位置被認為是非目標 物所在區域,刪除該位置的目標物所在區域,從而得到最終的目標物檢測結果;所述通信接 口控制模塊190,用于在串行通信時序方式下通過所述通信接口模塊500,使所述FPGA控制 與處理模塊100與所述上位機模塊600進行雙向通信。
[0054]具體地,所述圖像緩存模塊400采用SDRAM(Synch;ronous Dynamic Random-Access Memory,同步動態隨機存儲器)實現,所述SDRAM與所述FPGA控制與處理模塊100電連接。
[0055] 具體地,所述上位機模塊600采用計算機或嵌入式設備實現,用于顯示所述機器視 覺檢測系統的檢測結果,實現人機交互。
[0056] 具體地,請結合參照圖2,所述光強檢測模塊200包括光電傳感器210、信號調理電 路220、放大濾波電路230及模數轉換電路240;所述光電傳感器210與所述信號調理電路220 的輸入端連接,所述信號調理電路220的輸出端經所述放大濾波電路230與所述模數轉換電 路240的輸入端連接,所述模數轉換電路240的輸出端與所述FPGA控制與處理模塊100連接。
[0057] 在本實施例中,所述光電傳感器210將所述攝像頭模塊300拍攝的環境的光強轉換 成對應的物理信號,所述信號調理電路220將所述光電傳感器210采集的物理信號轉換成對 應的模擬信號,經所述放大濾波電路230對模擬信號進行功率放大、濾除雜波等干擾信號, 再通過所述模數轉換電路240將模擬信號轉換成數字信號輸出至所述FPGA控制與處理模塊 100進行處理。
[0058] 具體地,請結合參照圖3和圖4,所述攝像頭模塊300采用單攝像頭或多攝像頭兩種 方式。易于理解的是,單攝像頭采集圖像的區域有限,可能造成待檢測目標物在單攝像頭采 集區域范圍W外而不能被正確檢測的問題。在多攝像頭方式下,所有攝像頭按特定方式安 置,確保同時采集相鄰區域的圖像,使之比單攝像頭方式下采集更大區域范圍的圖像。攝像 頭的數量將由實際應用需要檢測的區域范圍和每個攝像頭的采集區域共同決定。
[0059] 具體地,請結合參照圖5,所述攝像頭模塊300采用多攝像頭方式時,每次獲得相鄰 區域的多帖圖像。所述圖像拼接使能模塊150下達使能信號,所述圖像拼接模塊151將所述 圖像緩存控制模塊140輸出的所述攝像頭模塊300全部攝像頭同一時刻拍攝的圖像合并成 一帖連貫且不重復、邊界拼接縫隙不明顯的圖像。最后將完成拼接的整帖圖像輸出至所述 圖像金字塔模塊160進行處理。經過圖像拼接過程,在相鄰區域的兩帖圖像的邊界同樣可W 使用檢測窗口對目標物進行檢測,避免出現漏檢的情況。
[0060] 具體地,請結合參照圖6,提供了本發明機器視覺檢測系統實施例的不同尺度目標 物檢測的第一實施例。所述圖像金字塔模塊160將所述圖像拼接模塊151輸出的一帖原始圖 像按相同的比例系數逐層縮小W構建金字塔狀排列的分辨率逐步降低的圖像集合,所述比 例系數取值范圍為[0.2,0.95],圖像縮放采用最近鄰插值算法。進一步地,根據實際應用場 合中目標物區域面積占據整帖圖像面積的比例范圍,設置所述圖像金字塔模塊160的圖像 集合的上限分辨率和下限分辨率。舉例來說,當所述攝像頭模塊300采用單攝像頭方式,拍 攝圖像分辨率為640 X 480;檢測窗口分辨率為24 X 24;所述圖像金字塔模塊160將所述圖像 拼接模塊151輸出的一帖原始圖像按比例系數為0.8逐層縮小W構建金字塔狀排列的分辨 率逐步降低的圖像集合;并且待檢測目標物為人臉,根據實際應用場合,圖像中人臉區域面 積占據整帖圖像面積的比例不高于0.25,同時不低于0.01,在運前提下,為了節約FPGA資 源,提高對目標物的檢測速度,所述圖像金字塔模塊160中各層圖像的分辨率為320X240、 256X192、204X153、163X122、131X98、104X78、83X62、67X50、53X40、42X32,共有層 級總數k等于10,縮放過程中對長寬像素數目作了取整處理。對目標物進行檢測時,檢測窗 口從左到右、從上到下遍歷所述圖像金字塔模塊160的各層圖像,并且從所述圖像金字塔模 塊160的層級1到層級k依次對目標物進行檢測。
[0061] 進一步地,請結合參照圖7,為了提高所述機器視覺檢測系統的檢測速度,提供了 本發明機器視覺檢測系統實施例的不同尺度目標物檢測的第二實施例。在所述圖像金字塔 模塊160構建圖像集合的方法上,所述不同尺度目標物檢測的第二實施例與所述不同尺度 目標物檢測的第一實施例完全一樣。而在對目標物進行檢測時,所述不同尺度目標物檢測 的第二實施例中的檢測窗口從左到右、從上到下遍歷所述圖像金字塔模塊160的各層圖像, 并且在所述圖像金字塔模塊160的所有層級圖像中同時對目標物進行檢測。
[0062] 需要說明的是,所述機器視覺檢測系統采用特征數量適中、描述圖像紋理結構信 息出色的LBP特征,合理構造弱分類器的串并聯結構,使之構成強分類器。LBP特征值定義 為:將3X3窗口方格的中屯、格子的像素值分別與八個鄰域格子的像素值進行比較,如果中 屯、格子的像素值大于或者等于鄰域格子的像素值,則該鄰域格子標記為0,否則標記為1。最 后將運八個鄰域格子的標記值按照一定順序編碼得到一個八位的無符號二進制值,稱為該 3乂3窗口的1^8?特征值。
[0063] 具體地,請結合參照圖8,所述機器視覺檢測系統采用的MB-LBP(Multi-Block Local Binary Patterns,分區局部二值模式)特征是LBP特征的擴展形式。首先,分別計算 3 X 3個相同大小的矩形區域中的所有像素和,得到9個數值Υο、Yi、Y2、Y3、Y4、Y5、Y6、Y7、Yc,然 后對運9個數值使用LBP特征計算方式獲取MB-LBP特征值。
[0064] 進一步地,請結合參照圖9,為了減少每次計算MB-LBP特征值過程中對矩形區域像 素求和的計算量,使用積分圖的思想。積分圖中每一個點的值是指從圖像的左上角到運個 點所構成的矩形區域內所有像素之和。舉例來說,在積分圖中F點的值代表矩形區域ABEF中 所有像素之和Si,G點的值代表矩形區域ACEG中所有像素之和S2,I點的值代表矩形區域ABHI 中所有像素之和S3 J點的值代表矩形區域ACHJ中所有像素之和S4。計算矩形區域FGIJ中所 有像素之和,可W使用S4-S2-S3+S1快速計算得到。對所述圖像金字塔模塊160的各層級圖像 構造積分圖,W便在使用檢測窗口遍歷各層級圖像時可此陜速獲得相應的MB-LBP特征值, 提局對目標物的檢測速度。
[0065] 需要說明的是,對目標物進行檢測的LBP特征級聯分類器由強分類器級聯構成,而 各級強分類器又由作為基本單元的弱分類器級聯構成。使用分類器對目標物進行檢測的過 程是:按順序使用各級強分類器對當前檢測窗口進行目標物檢測。具體地,計算強分類器的 各個弱分類器對當前檢測窗口的特征值,將特征值與弱分類器闊值進行比較,然后查表獲 得影響因子,統計各個弱分類器輸出的影響因子之和并且與強分類器闊值進行比較來判斷 當前檢測窗口是否通過強分類器的檢測。如果當前檢測窗口通過強分類器的檢測,則繼續 調用下一級強分類器對當前檢測窗口進行檢測,否則停止對當前檢測窗口的檢測,重新對 下一個檢測窗口進行檢測。只有通過所有強分類器檢測的檢測窗口,才被認為存在目標物。 所述弱分類器闊值、所述影響因子的查詢表數據W及所述強分類器闊值都是利用現有技 術,將數量充足、特征明顯的樣本圖片數據作為訓練集輸入到計算機,運行AdaBoost算法程 序而獲得。
[0066] 具體地,請結合參照圖10,本發明機器視覺檢測系統實施例的LBP特征強分類器的 第一實施例采用串并混合方式進行級聯。其中,第1級到第m級強分類器采用并聯方式同時 對當前檢測窗口進行檢測,每個強分類器的所有弱分類器同時對當前檢測窗口計算特征 值。第m+1級到第n(n〉m)級強分類器采用串聯方式逐次對當前檢測窗口進行檢測,每個強分 類器同時使用r個弱分類器對當前檢測窗口計算特征值,弱分類器總數少于r的強分類器的 所有弱分類器同時對當前檢測窗口計算特征值。r越大檢測速度越快,而FPGA資源占用率越 大,本實施例中r的取值范圍為[1,10]。只有通過所有并聯強分類器檢測的檢測窗口,才被 輸入到串聯強分類器作進一步檢測;只有通過所有強分類器檢測的檢測窗口才被認為存在 目標物。
[0067] 進一步地,請結合參照圖11,本發明機器視覺檢測系統實施例的LBP特征強分類器 的第二實施例采用并聯方式進行級聯。所有強分類器同時對當前檢測窗口進行檢測,每個 強分類器的所有弱分類器同時對當前檢測窗口計算特征值。只有通過所有強分類器檢測的 檢測窗口才被認為存在目標物。
[0068] 進一步地,請結合參照圖12,本發明機器視覺檢測系統實施例的LBP特征強分類器 的第Ξ實施例采用串聯方式進行級聯。所有強分類器依次對當前檢測窗口進行檢測,每個 強分類器的所有弱分類器依次對當前檢測窗口計算特征值。只有通過所有強分類器檢測的 檢測窗口才被認為存在目標物。
[0069] 所述圖像金字塔模塊160的所有圖像集合經過所述LBP特征級聯分類器模塊170檢 測后,將檢測到的全部目標物所在區域按對應比例映射到原始分辨率的圖像上。在原始分 辨率圖像的同一位置被檢測到存在目標物的數量多于第一數量闊值時,該位置被認為是真 實目標物所在區域,合并該位置的目標物所在區域。在原始分辨率圖像的同一位置被檢測 到存在目標物的數量少于或等于第一數量闊值時,該位置被認為是由于噪聲干擾導致誤檢 或者根本檢測不出目標物,從而該位置被認為是非目標物所在區域。本實施例中所述第一 數量闊值的取值范圍為[1,5]。
[0070] 本發明技術方案通過FPGA控制與處理模塊100、光強檢測模塊200、攝像頭模塊 300、圖像緩存模塊400、通信接口模塊500、上位機模塊600,形成了一種機器視覺檢測系統。
[0071] 本發明技術方案通過引入攝像頭組合和圖像拼接技術,W適應不同檢測區域的應 用場合的需要。根據檢測區域的大小,所述攝像頭模塊300采用單攝像頭或多攝像頭兩種方 式。在多攝像頭方式下,所有攝像頭按特定方式安置,確保同時采集相鄰區域的圖像,使之 比單攝像頭方式下采集更大區域范圍的圖像。同時,在多攝像頭方式下,通過所述圖像拼接 模塊151,將所述攝像頭模塊300的全部攝像頭同一時刻拍攝的圖像合并成一帖連貫且不重 復的圖像,使之比單攝像頭方式下輸出更大區域范圍的整帖圖像。
[0072] 本發明技術方案通過引入反饋方式使圖像采集系統的曝光時間達到最優。所述光 強檢測模塊200對所述攝像頭模塊300的拍攝環境的光強進行實時檢測,根據檢測到的光強 值動態調整所述攝像頭模塊300的曝光時間。具體地,在所述攝像頭模塊300的曝光時間的 可設置范圍內,光強值增大時適當縮短曝光時間,光強值減小時適當增長曝光時間,使所述 攝像頭模塊300拍攝的圖像質量更高,提高目標物檢測的精度。從而解決了現有圖像采集系 統的曝光時間固定不變或者拍攝前人為設定,外部環境的光強變化使圖像質量下降,對目 標物檢測產生嚴重干擾的缺陷。
[0073] 本發明技術方案把對目標物檢測的圖像處理集成在FPGA忍片上,通過進行硬件并 行處理W提高處理速度。具體地,采用特征數量適中、描述圖像紋理結構信息出色的LBP特 征,合理構造弱分類器的串并聯結構,使之構成強分類器;并且將待檢測的圖像按比例縮小 W構建金字塔狀排列的分辨率逐步降低的圖像集合,根據實際應用場合中目標物區域面積 占據整帖圖像面積的比例范圍,設置所述圖像金字塔模塊160的圖像集合的上限分辨率和 下限分辨率,所述圖像金字塔模塊160的各層存放分辨率不同的圖像,使用固定大小的檢測 窗口,調用串并聯結構的LBP特征級聯分類器對所述圖像金字塔模塊160的各層圖像進行目 標物檢測,W獲取原始圖像中不同尺度的目標物區域。本發明技術方案綜合考慮FPGA內部 資源消耗及目標物檢測效果兩個因素,采用合理的串并聯處理架構,在保證足夠的檢測精 度下,獲得較高的檢測速度,同時,硬件配置成本合理。
[0074] W上所述僅為本發明的優選實施例,并非因此限制本發明的專利范圍,凡是在本 發明的發明構思下,利用本發明說明書及附圖內容所作的等效結構變換,或直接/間接運用 在其他相關的技術領域均包括在本發明的專利保護范圍內。
【主權項】
1. 一種機器視覺檢測系統,其特征在于,所述機器視覺檢測系統包括FPGA (Field-Programmable Gate Array,現場可編程門陣列)控制與處理模塊、光強檢測模塊、攝像頭 模塊、圖像緩存模塊、通信接口模塊、上位機模塊;所述光強檢測模塊、所述攝像頭模塊、所 述圖像緩存模塊、所述通信接口模塊都與所述FPGA控制與處理模塊電連接;所述通信接口 模塊與所述上位機模塊電連接;其中, 所述光強檢測模塊,用于檢測所述攝像頭模塊拍攝的環境的光強并轉換成對應的光強 信號輸入至所述FPGA控制與處理模塊; 所述攝像頭模塊,用于采集圖像并轉換成對應的圖像數據輸入至所述FPGA控制與處理 模塊;根據檢測區域的大小,所述攝像頭模塊采用單攝像頭或多攝像頭兩種方式;在多攝像 頭方式下,所有攝像頭按特定方式安置,確保同時采集相鄰區域的圖像,使之比單攝像頭方 式下采集更大區域范圍的圖像; 所述圖像緩存模塊,用于緩存所述攝像頭模塊采集的圖像的灰度化數據,解決圖像采 集與圖像處理對圖像數據存取時間不一致的沖突; 所述通信接口模塊,用于對所述FPGA控制與處理模塊和所述上位機模塊之間傳輸的信 號進行電平轉換; 所述上位機模塊,用于顯示所述機器視覺檢測系統的檢測結果,包括目標物所在區域 位置和目標物所在區域大小; 所述FPGA控制與處理模塊,用于配置所述攝像頭模塊的參數,給所述光強檢測模塊下 達檢測使能信號并且通過檢測反饋的光強信號配置所述攝像頭模塊的曝光時間;然后將所 述攝像頭模塊采集的圖像進行數據格式轉換、緩存至所述圖像緩存模塊以及進行目標物檢 測;當所述攝像頭模塊采用多攝像頭方式時,進行目標物檢測前需要將相鄰攝像頭拍攝的 圖像的邊緣進行拼接,使相鄰攝像頭拍攝的交界區域都能進行有效的目標物檢測;最后將 檢測結果通過所述通信接口模塊上傳至所述上位機模塊進行顯示。2. 如權利要求1所述的機器視覺檢測系統,其特征在于,所述FPGA控制與處理模塊包 括光強檢測使能模塊、攝像頭配置模塊、圖像格式轉換模塊、圖像緩存控制模塊、圖像拼接 使能模塊、圖像拼接模塊、圖像金字塔模塊、LBP(Local Binary Patterns,局部二值模式) 特征級聯分類器模塊、目標區域處理模塊、通信接口控制模塊;所述光強檢測使能模塊與所 述光強檢測模塊的輸入端連接,所述光強檢測模塊的輸出端經所述攝像頭配置模塊與所述 攝像頭模塊的輸入端連接,所述攝像頭模塊的輸出端經所述圖像格式轉換模塊與所述圖像 緩存控制模塊的輸入端連接,所述圖像緩存控制模塊與所述圖像緩存模塊進行雙向傳輸, 所述圖像緩存控制模塊的輸出端經所述圖像拼接模塊與所述圖像金字塔模塊的輸入端連 接,所述圖像拼接使能模塊與所述圖像拼接模塊連接,所述圖像金字塔模塊的輸出端經所 述LBP特征級聯分類器模塊與所述目標區域處理模塊的輸入端連接,所述目標區域處理模 塊的輸出端與所述通信接口控制模塊的輸入端連接,所述通信接口控制模塊與所述通信接 口模塊進行雙向傳輸;其中, 所述光強檢測使能模塊,用于在所述機器視覺檢測系統工作時,通過給所述光強檢測 模塊下達使能信號使之工作; 所述攝像頭配置模塊,用于配置所述攝像頭模塊的參數,以及根據所述光強檢測模塊 反饋的光強信號配置所述攝像頭模塊的曝光時間; 所述圖像格式轉換模塊,用于將所述攝像頭模塊拍攝的圖像數據進行灰度值格式轉 換; 所述圖像緩存控制模塊,用于控制所述圖像格式轉換模塊輸出的灰度圖像數據輸入至 所述圖像緩存模塊,以及控制所述圖像緩存模塊輸出的灰度圖像數據輸入至所述圖像拼接 豐旲塊; 所述圖像拼接使能模塊,用于控制所述圖像拼接模塊的工作模式;當所述攝像頭模塊 采用多攝像頭方式時,所述圖像拼接使能模塊給所述圖像拼接模塊發送使能信號;當所述 攝像頭模塊采用單攝像頭方式時,所述圖像拼接使能模塊給所述圖像拼接模塊發送非使能 信號; 所述圖像拼接模塊,用于處理所述圖像緩存控制模塊輸出的圖像數據;當從所述圖像 拼接使能模塊接收到使能信號時,所述圖像拼接模塊將所述圖像緩存控制模塊輸出的所述 攝像頭模塊全部攝像頭同一時刻拍攝的圖像數據合并成一幀連貫且不重復、邊界拼接縫隙 不明顯的圖像數據,然后將整幀圖像數據輸出至所述圖像金字塔模塊;當從所述圖像拼接 使能模塊接收到非使能信號時,所述圖像拼接模塊將所述圖像緩存控制模塊輸出的圖像數 據直接輸出至所述圖像金字塔模塊; 所述圖像金字塔模塊,用于將所述圖像拼接模塊輸出的每幀灰度圖按比例縮小以構建 金字塔狀排列的分辨率逐步降低的圖像集合,并且根據實際應用場合中目標物區域面積占 據整幀圖像面積的比例范圍,設置所述圖像金字塔模塊的圖像集合的上限分辨率和下限分 辨率,所述圖像金字塔模塊的各層存放分辨率不同的圖像; 所述LBP特征級聯分類器模塊,用于使用固定大小的檢測窗口,調用串并聯結構的LBP 特征級聯分類器對所述圖像金字塔模塊的各層圖像進行目標物檢測,以獲取原始圖像中不 同尺度的目標物所在區域; 所述目標區域處理模塊,用于將所述LBP特征級聯分類器模塊檢測到的全部目標物所 在區域按對應比例映射到原始分辨率的圖像上;在原始分辨率圖像的同一位置,利用所述 LBP特征級聯分類器模塊檢測到存在目標物的數量多于第一數量閾值時,該位置被認為是 真實目標物所在區域,合并該位置的目標物所在區域;在原始分辨率圖像的同一位置,利用 所述LBP特征級聯分類器模塊檢測到存在目標物的數量少于或等于第一數量閾值時,該位 置被認為是非目標物所在區域,刪除該位置的目標物所在區域,從而得到最終的目標物檢 測結果; 所述通信接口控制模塊,用于在串行通信時序方式下通過所述通信接口模塊,使所述 FPGA控制與處理模塊與所述上位機模塊進行雙向通信。3. 如權利要求1至2中任意一項所述的機器視覺檢測系統,其特征在于,所述光強檢測 模塊包括光電傳感器、信號調理電路、放大濾波電路及模數轉換電路;所述光電傳感器與所 述信號調理電路的輸入端連接,所述信號調理電路的輸出端經所述放大濾波電路與所述模 數轉換電路的輸入端連接,所述模數轉換電路的輸出端與所述FPGA控制與處理模塊連接。4. 如權利要求1至2中任意一項所述的機器視覺檢測系統,其特征在于,所述圖像緩存 模塊米用SDRAM(Synchronous Dynamic Random-Access Memory,同步動態隨機存儲器)實 現,所述SDRAM與所述FPGA控制與處理模塊電連接。5. 如權利要求1至2中任意一項所述的機器視覺檢測系統,其特征在于,所述上位機模 塊采用計算機或嵌入式設備實現。
【文檔編號】G06K9/62GK105825219SQ201610305198
【公開日】2016年8月3日
【申請日】2016年5月10日
【發明人】梁偉棠
【申請人】梁偉棠