動(dòng)或色變,則需執(zhí)行步驟S300來構(gòu)建新的同心圓球并獲得新的分割邊界。
[0043] 一、當(dāng)分割對象移動(dòng)時(shí),針對每一視頻幀的圖像,所述步驟S300具體包括: 步驟31、對當(dāng)前圖像,以標(biāo)示區(qū)域?yàn)榛鶞?zhǔn),在標(biāo)示區(qū)域的上、下、左、右四個(gè)方向等面積 分區(qū)。
[0044] 如圖6所示,對當(dāng)前圖像,以步驟S200中所確定的分割圖像的標(biāo)示區(qū)域?yàn)橹行?,?照標(biāo)示區(qū)域的面積在其上、下、左、右四個(gè)方向上分別劃出相同的區(qū)域,從而把當(dāng)前圖像分 為五個(gè)面積相等的子區(qū)域,即圖6中所示的A、B、C、D、E五個(gè)子區(qū)域,可以順時(shí)針或逆時(shí)針 的方向排序。A子區(qū)域即為原始的圖像中標(biāo)示區(qū)域。A子區(qū)域中的虛線為上述步驟23得到 的分割邊界,實(shí)線為運(yùn)動(dòng)后的分割邊界。從圖6中可以看出運(yùn)動(dòng)后分割對象分布在A子區(qū) 域、D子區(qū)域和E子區(qū)域中。
[0045] 步驟32、獲取分區(qū)后各子區(qū)域的像素點(diǎn)在RGB空間坐標(biāo)系中的RGB值點(diǎn),判斷該子 區(qū)域中有預(yù)設(shè)個(gè)RGB值點(diǎn)處于同心圓球內(nèi)時(shí),將預(yù)設(shè)個(gè)RGB值點(diǎn)作為中心區(qū)域。
[0046] 從圖6中可以看出運(yùn)動(dòng)后分割對象分布在A子區(qū)域、D子區(qū)域和E子區(qū)域中。因 此,運(yùn)動(dòng)后的分割對象可能處于不同或某一子區(qū)域中,則映射時(shí)該子區(qū)域中的分割對象的 RGB值點(diǎn)會(huì)處于同心圓球內(nèi),且在同心圓球內(nèi)的坐標(biāo)不變。本實(shí)施例按照A、B、C、D、E的順 序,分別依次對每個(gè)子區(qū)域的RGB值點(diǎn)進(jìn)行統(tǒng)計(jì),判斷某子區(qū)域的RGB值點(diǎn)較多時(shí)說明分割 對象在該子區(qū)域占據(jù)一定面積。
[0047] 在具體實(shí)施時(shí),可先把A子區(qū)域中的每一個(gè)像素點(diǎn)的RGB值都映射到RGB空間坐 標(biāo)系中。若在A子區(qū)域能尋找到預(yù)設(shè)個(gè)(根據(jù)實(shí)際情況確定,至少是10個(gè)以上)像素點(diǎn)對 應(yīng)的RGB值點(diǎn)與內(nèi)、外同心圓球中的某些RGB值點(diǎn)的坐標(biāo)相同,說明運(yùn)動(dòng)后的分割對象的部 分處于A子區(qū)域。則可以用這預(yù)設(shè)個(gè)以上的像素點(diǎn)確定一個(gè)中心區(qū)域,同時(shí)不再對其它的 子區(qū)域進(jìn)行RGB值的比對。
[0048] 若A子區(qū)域沒有找出預(yù)設(shè)個(gè)以上的像素點(diǎn)對應(yīng)的RGB值點(diǎn)與內(nèi)、外同心圓球中的 某些RGB值點(diǎn)的坐標(biāo)相同,則按照上述方式繼續(xù)比較B子區(qū)域,直至找出有預(yù)設(shè)個(gè)以上的像 素點(diǎn)為止。這樣可以減少運(yùn)算處理,加快查詢速度。
[0049] 步驟33、將中心區(qū)域的像素點(diǎn)向周圍擴(kuò)展,判斷擴(kuò)展后的像素點(diǎn)的RGB值點(diǎn)是否 處于同心圓球內(nèi),以與同心圓球的球心坐標(biāo)相等的RGB值點(diǎn)對應(yīng)的像素點(diǎn)作為分割對象新 的中心點(diǎn)。
[0050] 在確定的中心區(qū)域中,將已獲取的預(yù)設(shè)個(gè)像素點(diǎn)向周圍擴(kuò)展,總會(huì)尋找到屬于分 割對象的RGB值點(diǎn),并且這些RGB值點(diǎn)分布在同心圓球中。如圖7所示,若是屬于原來的分 割對象的像素點(diǎn),那么隨著以中心區(qū)域的像素點(diǎn)向周圍擴(kuò)展(圖7中的左圖),會(huì)有越來越多 對應(yīng)的RGB值點(diǎn)落入同心圓球內(nèi)(圖7中的右圖)。不屬于原來分割對象的像素點(diǎn),則其對 應(yīng)的RGB值點(diǎn)不會(huì)落入同心圓球內(nèi)。
[0051] 通過不斷擴(kuò)展,就可以找出某個(gè)像素點(diǎn)的RGB值點(diǎn)的坐標(biāo)等于同心圓球的球心的 坐標(biāo),則該像素點(diǎn)即是當(dāng)前圖像的分割對象的中心點(diǎn)。
[0052] 步驟34、以新的中心點(diǎn)為基準(zhǔn),按照步驟22的擴(kuò)展方式確定出新的分割對象的邊 界點(diǎn),即以新的中心點(diǎn)為基準(zhǔn)向外擴(kuò)展,判斷擴(kuò)展后的像素點(diǎn)的RGB值點(diǎn)是否處于同心圓 球內(nèi),以不處于同心圓球內(nèi)的前一個(gè)像素點(diǎn)作為邊界點(diǎn)。按照步驟23將新的邊界點(diǎn)組合成 新的分割邊界,標(biāo)示出運(yùn)動(dòng)后的分割圖像在圖像中的標(biāo)示區(qū)域后保存;即可實(shí)現(xiàn)運(yùn)動(dòng)后的 分割對象的分割。
[0053] 二、當(dāng)所分割對象發(fā)生形變或受到環(huán)境影響使其顏色發(fā)生變化時(shí),RGB值對應(yīng)改 變,則RGB空間坐標(biāo)系中的同心圓球內(nèi)的點(diǎn)數(shù)會(huì)減少或增多,同時(shí),分布在RGB空間坐標(biāo)系 中的點(diǎn)的密集分布程度也會(huì)發(fā)生變化。針對這種情況,所述步驟S300采用如下方法: 在每次確定分割對象的分割邊界后,求取內(nèi)同心圓球內(nèi)所有像素點(diǎn)的R、G、B平均值, 并以該平均值作為球心來替換當(dāng)前內(nèi)、外同心圓球的球心,以保證內(nèi)、外同心圓球所包括的 點(diǎn)大部分均勻的分布在內(nèi)、外同心圓球內(nèi)。
[0054] 按照上述步驟21,以新的球心重新構(gòu)建包含第一預(yù)設(shè)點(diǎn)數(shù)的像素點(diǎn)的新的內(nèi)同心 圓球和包含第二預(yù)設(shè)點(diǎn)數(shù)的像素點(diǎn)的新的外同心圓球。接著按照步驟22將當(dāng)前的分割邊 界向外擴(kuò)展,判斷擴(kuò)展后的像素點(diǎn)的RGB值點(diǎn)是否處于新的同心圓球內(nèi),以不處于同心圓 球內(nèi)的前一個(gè)像素點(diǎn)作為新的邊界點(diǎn)。最后按照步驟23將多個(gè)新的邊界點(diǎn)組合成新的分 割邊界,標(biāo)示出分割對象在圖像中的標(biāo)示區(qū)域后保存;即可實(shí)現(xiàn)形變或色變后的分割對象 的分割。
[0055] 基于上述的基于顏色的圖像分割方法,本發(fā)明還相應(yīng)提供一種基于顏色的圖像分 割裝置,其包括RGB處理模塊10、圓球處理模塊20和變化處理模塊30,所述RGB處理模塊 10、圓球處理模塊20和變化處理模塊30依次連接。其中,所述RGB處理模塊10用于提取 圖像中所選區(qū)域內(nèi)各像素點(diǎn)的RGB值,根據(jù)所述RGB值在RGB空間坐標(biāo)系中顯示各像素點(diǎn) 的RGB值點(diǎn)。圓球處理模塊20在RGB空間坐標(biāo)系中構(gòu)建包含預(yù)設(shè)像素點(diǎn)數(shù)的同心圓球,將 所選區(qū)域的邊界向外擴(kuò)展,根據(jù)擴(kuò)展后的像素點(diǎn)的RGB值點(diǎn)是否在同心圓球內(nèi)來獲得分割 邊界。變化處理模塊30在所選區(qū)域變化時(shí),根據(jù)變化后像素點(diǎn)的RGB值點(diǎn)在同心圓球中的 分布狀態(tài)獲取新的球心,構(gòu)建新的同心圓球并獲得新的分割邊界。
[0056] 其中,所述RGB處理模塊10包括: 區(qū)域處理單元101,用于識別選取的待分割對象的區(qū)域并標(biāo)記為所選區(qū)域,以及提取出 所選區(qū)域內(nèi)各像素點(diǎn)的RGB ; RGB映射單元102,用于構(gòu)建一個(gè)RGB空間坐標(biāo)系,以及根據(jù)RGB值將各像素點(diǎn)映射在 RGB空間坐標(biāo)系中,獲得像素點(diǎn)對應(yīng)的RGB值點(diǎn)在RGB空間坐標(biāo)系中的坐標(biāo); 所述區(qū)域處理單元101連接RGB映射單元102。
[0057] 所述圓球處理模塊20包括: 同心圓球單元201,用于以所選區(qū)域的中心點(diǎn)在RGB空間坐標(biāo)系中對應(yīng)的點(diǎn)為球心, 構(gòu)建包含第一預(yù)設(shè)點(diǎn)數(shù)的像素點(diǎn)的內(nèi)同心圓球和包含第二預(yù)設(shè)點(diǎn)數(shù)的像素點(diǎn)的外同心圓 球; 擴(kuò)展單元202,用于將所選區(qū)域的邊界向外擴(kuò)展,判斷擴(kuò)展后的像素點(diǎn)的RGB值點(diǎn)是否 處于同心圓球內(nèi),以不處于同心圓球內(nèi)的前一個(gè)像素點(diǎn)作為邊界點(diǎn); 邊界標(biāo)示單元203,用于將多個(gè)邊界點(diǎn)組合成分割邊界,標(biāo)示出分割對象在圖像中的標(biāo) 不區(qū)域后保存; 所述同心圓球單元201連接RGB映射單元102和擴(kuò)展單元202,所述擴(kuò)展單元202連接 區(qū)域處理單元101和邊界標(biāo)示單元203。
[0058] 所述變化處理模塊30包括: 分區(qū)單元301,用于對當(dāng)前圖像,以標(biāo)示區(qū)域?yàn)榛鶞?zhǔn),在標(biāo)示區(qū)域的上、下、左、右四個(gè)方 向等面積分區(qū); 中心區(qū)域處理單元302,用于獲取分區(qū)后各子區(qū)域的像素點(diǎn)在RGB空間坐標(biāo)系中的RGB 值點(diǎn),判斷該子區(qū)域中有預(yù)設(shè)個(gè)RGB值點(diǎn)處于同心圓球內(nèi)時(shí),將預(yù)設(shè)個(gè)RGB值點(diǎn)作為中心區(qū) 域。
[0059] 所述擴(kuò)展單元202還用于將中心區(qū)域的像素點(diǎn)向周圍擴(kuò)展,判斷擴(kuò)展后的像素點(diǎn) 的RGB值點(diǎn)是否處于同心圓球內(nèi),以與同心圓球的球心坐標(biāo)相等的RGB值點(diǎn)對應(yīng)的像素 點(diǎn)作為分割對象新的中心點(diǎn);以及以新的中心點(diǎn)為基準(zhǔn)向外擴(kuò)展,判斷擴(kuò)展后的像素點(diǎn)的 RGB值點(diǎn)是否處于同心圓球內(nèi),以不處于同心圓球內(nèi)的前一個(gè)像素點(diǎn)作為新的邊界點(diǎn) 所述邊界標(biāo)示單元203還用于將新的邊界點(diǎn)組合成新的分割邊界,標(biāo)示出運(yùn)動(dòng)后的分 割圖像在圖像中的標(biāo)示區(qū)域后保存; 所述分區(qū)單元301連接中心區(qū)域處理單元302和邊界標(biāo)示單元203,所述中心區(qū)域處理 單元302連接擴(kuò)展單元202和同心圓球單元201。
[0060] 所述變化處理模塊30還包括: 平均值單元303,用于求取內(nèi)同心圓球內(nèi)所有像素點(diǎn)的R、G、B平均值,并以該平均值作 為球心來替換當(dāng)前內(nèi)、外同心圓球的球心; 所述同心圓球單元201還用于