自動模糊身體部位的方法及系統的制作方法
【技術領域】
[0001]本發明涉及圖像處理領域,尤其是涉及一種自動模糊身體部位的方法及系統。
【背景技術】
[0002]隨著智能家居的生活理念越來越普及,智能家庭安防設備也得到越來越多人的關注,更多的家庭選擇在家中安裝了監控攝像頭,并通過網絡將圖像傳送到用戶的手機。而當用戶在家的時候,攝像頭也時刻監視著用戶的一舉一動,如何保證用戶的隱私安全,保證圖像信息不被泄漏到網絡上,也成了用戶比較關心的一個問題。
[0003]目前的家庭監控攝像頭比較接近的技術,如通過人臉識別后,將鏡頭拉近,放大,只看到人臉部位。缺點就是,在人臉識別之后鏡頭拉近的時間里,身體部位仍然會被上傳上去。因此,攝像頭如何在正常工作狀態中能實時對人臉以外的身體部分進行處理來保護個人隱私已成為室內智能家居攝像頭的重要課題之一。
【發明內容】
[0004]本發明所要解決的技術問題是:提供一種自動模糊身體部位的方法及系統,實現安防目的的同時,又可以保護好用戶的個人隱私。
[0005]為了解決上述技術問題,本發明采用的技術方案為:提供一種自動模糊身體部位的方法,包括:
[0006]獲取原始圖像,并對所述原始圖像進行中值濾波,去除圖像噪點,獲得第一圖像;
[0007]將所述第一圖像從RGB空間轉換為YCbCr空間,獲得第二圖像;
[0008]在所述第二圖像內提取Y分量作為背景模型;
[0009]計算所述第二圖像中的像素值與所述Y分量的背景模型中的像素值的差值,獲得掩膜,并與所述第一圖像作與運算,獲得第一圖像前景區域;
[0010]在所述第一圖像前景區域上檢測識別用戶人臉區域,并模糊處理所述用戶人臉區域以外的區域。
[0011]其中,獲取原始圖像,并對所述原始圖像進行中值濾波,去除圖像噪點,獲得第一圖像的步驟具體為:
[0012]通過攝像頭前端拍攝第一視頻,解析所述第一視頻,獲得所述原始圖像;
[0013]利用公式g(x, y) = med{f (χ-k, y-1), (k, lew)}對所述原始圖像進行中值濾波,去除圖像噪點,獲得第一圖像;其中g(x,y),f(x,y)分別為濾波后的圖像和濾波前的圖像,W為(3X3)模板。
[0014]其中,在所述第二圖像內提取Y分量作為背景模型的步驟具體為:
[0015]在Y分量中將除用戶身體以外的區域設為背景模型。
[0016]其中,在Y分量中將除用戶身體以外的區域設為背景模型的步驟之后,還包括:
[0017]定期更新所述Y分量的背景模型。
[0018]其中,定期更新所述Y分量的背景模型的步驟具體為:
[0019]計算所述第二圖像中像素的滑動平均值,作為背景模型的像素值;
[0020]解析所述像素值,獲得Y分量的背景模型。
[0021]其中,計算所述第二圖像中的像素值與所述Y分量的背景模型中的像素值的差值,獲得掩膜,并與所述第一圖像作與運算,獲得第一圖像前景區域的步驟具體為:
[0022]利用大津法設置Y分量的背景模型中的像素值為最佳閾值;
[0023]將所述第二圖像中的像素值大于所述最佳閾值的像素作為前景像素,并設為掩膜;
[0024]所述掩膜與所述第一圖像作與運算,獲得所述第一圖像中的全部前景像素;
[0025]對全部前景像素作膨脹腐蝕算法,獲得前景像素完整無空洞的第一圖像前景區域。
[0026]其中,在所述第一圖像前景區域上檢測識別用戶人臉區域,并模糊處理所述用戶人臉區域以外的區域的步驟具體為:
[0027]在所述前景區域范圍內利用adaboost算法檢測識別用戶人臉區域,并模糊處理用戶人臉區域以外的區域。
[0028]其中,在所述第一圖像前景區域上檢測識別用戶人臉區域,并模糊處理用戶人臉區域以外的區域的步驟之后,還包括:
[0029]劃分用戶的人臉區域以外的區域為多個子區域;
[0030]設置每個所述子區域的顏色為所述子區域內出現最多的顏色;
[0031 ] 編譯處理后的第一圖像,生成第二視頻。
[0032]其中,編譯處理后的第一圖像,生成第二視頻的步驟之后,還包括:
[0033]對所述第二視頻進行H264編碼;
[0034]上傳編碼后的所述第二視頻數據到云端服務器。
[0035]為解決上述問題,本發明還提供一種自動模糊身體部位的系統,包括:
[0036]獲取模塊,用于獲取第一圖像,并對所述第一圖像進行中值濾波,去除圖像噪點;
[0037]轉換模塊,用于將所述圖像從RGB空間轉換為YCbCr空間,獲得第二圖像;
[0038]背景模型模塊,用于在所述第二圖像內設置Y分量背景模型;
[0039]計算模塊,用于計算所述第二圖像中的像素值與所述Y分量背景模型中的像素值的差值,獲得掩膜,并與所述第一圖像作與運算,獲得第一圖像前景區域;
[0040]處理模塊,用于在所述第一圖像前景區域上檢測識別用戶人臉區域,并模糊處理所述用戶人臉區域以外的區域。
[0041]本發明的有益效果在于:區別于現有技術,本發明可實時對本地視頻中的用戶身份進行識別,并對特定用戶的身體進行模糊處理,在將視頻數據上傳到云端服務器之前對個人的隱私進行了實時保護。
【附圖說明】
[0042]圖1為本發明方法實施例一的流程示意圖;
[0043]圖2為本發明方法實施例二的流程示意圖;
[0044]圖3為本發明系統實施例三的結構框圖;
【具體實施方式】
[0045]為詳細說明本發明的技術內容、所實現目的及效果,以下結合實施方式并配合附圖予以說明。
[0046]本發明最關鍵的構思在于:在攝像頭前端預先對圖像進行處理,將人臉之外的其他部位模糊掉,再上傳到云端服務器上,即使圖像數據上傳到網絡后被截取,用戶的隱私也得到了保護。
[0047]請參照圖1,本發明實施例一提供了一種自動模糊身體部位的的方法,包括如下步驟:
[0048]S1:獲取原始圖像,并對所述原始圖像進行中值濾波,去除圖像噪點,獲得第一圖像;
[0049]S2:將所述第一圖像從RGB空間轉換為YCbCr空間,獲得第二圖像;
[0050]S3:在所述第二圖像內設置Y分量作為背景模型;
[0051]S4:計算所述第二圖像中的像素值與所述Y分量的背景模型中的像素值的差值,獲得掩膜,并與所述第一圖像作與運算,獲得第一圖像前景區域;
[0052]S5:在所述第一圖像前景區域上檢測識別用戶人臉區域,并模糊處理所述用戶人臉區域以外的區域。
[0053]區別于現有技術,本發明方法實施例一通過實時對本地視頻中的用戶身份進行識另IJ,并對特定用戶的身體進行模糊處理,極大保護了用戶的隱私。
[0054]其中如圖2所示,本發明方法實施例二在步驟SI時,具體執行如下步驟:
[0055]Sll:通過攝像頭前端拍攝第一視頻,解析所述第一視頻,獲得所述原始圖像;
[0056]S12:利用公式g(x, y) = med{f (χ-k, y-1), (k, I e W)}對所述原始圖像進行中值濾波,去除圖像噪點,獲得第一圖像;其中g(x,y),f(x,y)分別為濾波后的圖像和濾波前的圖像,W為(3X3)模板。
[0057]中值濾波法是一種非線性平滑技術,它將每一像素點的灰度值(指黑白圖像中點的顏色深度,范圍一般從O到255,白色為255,黑色為0,故黑白圖片也稱灰度圖像)設置為該點某鄰域窗口內的所有像素點灰度值的中值。
[0058]由于原始圖像是通過攝像頭拍攝獲取,因此圖像噪點主要是指CXD(CMOS)將光線作為接收信號并輸出的過程中所產生的圖像中的粗糙部分,也指圖像中不該出現的外來像素,通常由電子干擾產生。看起來就像圖像被弄臟了,布滿一些細小的糙點。當所拍攝的數碼照片若用個人電腦將拍攝到的高畫質圖像縮小以后再看的話,也許就注意不到。不過,如果將原圖像放大,那么就會出現本來沒有的顏色(假色),這種假色就是圖像噪點。
[0059]在MATLAB圖像處理工具箱中,提供了 medfilt2函數(即Med函數)用于實現中值濾波。
[0060]medfilt2函數的語法格式為:
[0061]B = medfilt2(A)用3X 3的濾波窗口對圖像A進行中值濾波。
[0062]B = medfilt2 (A, [m η])用指定大小為mXn的窗口對圖像A進行中值濾波。
[0063]其中,步驟S3具體為:
[0064]S31:在Y分量中將除用戶身體以外的區域設為背景模型。
[0065]并在步驟S31之后,還包括:
[0066]S32:定期更新所述Y分量背景模型。
[0067]其中,步驟S32具體為:
[0068]S321:計算所述第二圖像中像素的滑動平均值,作為背景模型的像素值;
[0069]S322:解析所述像素值,獲得Y分量的背景模型。
[0070]一般地,在Y分量中將不包含任何前景物體的區域(如本實施例中的人身體以外的區域)設為背景,并轉化為背景模型。但是背景會隨著時間的變化而變化,比如光照條件變化,新的物體進入或離開背景中,因此有必要定期更新背景模型,如通過計算滑動平均值來實現。
[0071]具體地,在對原始圖像進行解析時,可獲得連續視頻幀,即可視為時序圖像。經過步驟SI, S2處理后,在第二圖像上計算每個像素的均值,同時應考慮接收到的最新圖像的每個像素的像素值,即P(t)是t時刻的每個像素的像素值,u (t-ι)是當前每個像素的平均像素值,那么新平均值為u(t) = (l-a)*u(t-l)+a*p(t),其中a為學習率,該值越大,滑動平均值對觀察值的適應速度越快。因此計算第二圖像中每個像素的滑動平均值作為背景模型的像素值。并解析所述背景模型的像素值,獲得Y分量背景模型。
[0072