本發明涉及交通違法監督領域,尤其涉及一種機動車違法行為隨手拍系統及方法。
背景技術:
隨著我國交通事業的發展,機動車駕駛員和車輛越來越多,道路交通違法和事故也隨之增多,傳統的交通違法舉報、取證、曝光模式已經遠遠不能滿足現代交通管理工作的需要,而隨著微博、微信等網絡社交應用的發展,越來越多的城市開展了交通違法隨手拍活動,此活動有效降低了交通違法舉報、取證的困難度,一定程度上遏制了交通違法現象的發生。然而,由于缺少一個功能完善,專門針對機動車違法行為隨手拍的系統來管理和服務于該項活動,可能會出現惡意舉報,虛假舉報,證據作假等現象,提高了交警對交通違法案件的認定難度。另外,通過微信、微博等方式進行舉報,往往會附帶有舉報者的個人信息,對舉報者的安全不利,極大的限制了該活動的有效性和推廣程度。
技術實現要素:
本發明為克服上述的不足之處,目的在于提供一種機動車違法行為隨手拍系統,本系統包括智能手機和后臺管理系統,結構簡單,使用方便。
本發明另一目的在于提供一種機動車違法行為隨手拍方法,通過智能手機上的隨手拍客戶端拍攝機動車違法行為的圖像或視頻和位置信息、車牌號、舉報說明等舉報信息上傳至后臺管理系統,通過后臺管理系統對舉報信息進行鑒別與認定,最后將機動車違法信息進行曝光。本方法操作簡單,實用且有限性高,同時易于推廣。
本發明是通過以下技術方案達到上述目的:一種機動車違法行為隨手拍方法,包括如下步驟:
(1)用戶通過智能手機上的隨手拍客戶端拍攝機動車違法行為的圖像或視頻,錄入車牌號、違法類型后進行防篡改保護處理后上傳至后臺管理系統;
(2)后臺管理系統對收到的舉報圖像或視頻解密后自動進行真偽檢測,若檢測通過,則自動將舉報圖像或視頻進行分布式存儲,對于分布式存儲的舉報圖像或視頻可隨時進行圖像完整性校驗,判斷圖像或視頻在后臺管理系統中是否遭到篡改;否則將舉報圖像或視頻標注為無效舉報;
(3)交警用戶登錄后臺管理系統,對存儲的舉報圖像或視頻進行管理與審核,對審核通過的做出處罰認定,并對情節嚴重的典型違法行為予以曝光。
作為優選,所述的隨手拍客戶端可查看曝光的違法行為和自己的舉報,優選拍攝3張不同角度的機動車違法行為圖像或一段小視頻;拍攝機動車違法行為的圖像或視頻時會自動定位至當前拍攝位置。
作為優選,所述的隨手拍客戶端將交通違法行為的日期時間、地點、隨手拍字樣信息以水印形式加載到原舉報圖像或視頻上,并進行數據加密形成新的舉報圖像或視頻,之后上傳至后臺管理系統。
作為優選,所述隨手拍客戶端的防篡改保護處理具體包括如下步驟:
(i)初始化階段:設隨手拍客戶端為IDi,啟動后與后臺管理系統建立連接,后臺管理系統隨機分配密鑰Ki給隨手拍客戶端,記錄Ki和隨手拍客戶端信息;
(ii)加載水印階段:隨手拍客戶端利用水印嵌入算法將由交通違法行為的日期時間、地點、隨手拍字樣信息作為素材的水印嵌入到用戶拍攝的圖像或視頻中;
(iii)數據加密階段:設隨手拍客戶端需上傳的圖片或視頻數據為Di,拍攝的圖像或視頻位置信息為Li,日期時間為Ti,具體如下:
a)用AES算法計算AESKi(IDi||Li||Ti),其中||為字符串連接符;
b)用SHA-2算法計算H(Ki||Di);
c)將步驟a)與步驟b)得到的結果合并形成校驗碼:
H(Ki||Di)||AESKi(ID||Li||Ti);
d)將圖像或視頻數據Di形成證據資料Fi=Di||H(Ki||Di)||AESKi(IDi||Li||Ti),上傳給后臺管理系統。
作為優選,所述步驟(2)的真偽檢測包括如下步驟:
1)輸入待檢測圖像A,并對圖像數據進行高斯金字塔分解,提取低頻分量B;
2)將分解后的圖像數據分塊處理,塊與塊之間一行或一列不相交;
3)提取每塊的4個特征值并以向量Vj的形式表示,Vj=(f1,f2,f3,f4)';
4)按照每個特征向量的第一個元素f1值的大小進行排序,在排序的過程中同時記錄下Vj所對應的塊在原始圖像矩陣B中的位置,以每塊的中心,即同心圓圓心坐標(xj,yj)表示;
5)比較特征向量Vj和與Vj相鄰的其他特征向量Vi=(i∈[j-e,j+e]且i≠j),計算相似度Res,取其中最小的一個值和設定的塊相似閾值進行比較,若符合條件Res<Rest,其中:
且L>Lt,則標記坐標(xj,yj)上對應的位置,記為1,存儲在矩陣W(xj,yj)中;若不存在這樣的相似對塊,則將對應位置標記為0;
6)通過數學形態學的處理方法去除滿足步驟5)所述條件的孤立塊,利用腐蝕膨脹進行區域填充,填補檢測到的連通圖像塊中的空洞;
7)對檢測結果進行采樣,并根據篡改面積閾值確定是否有被篡改的區域存在,從而確認輸入的原始圖像是否真實。
作為優選,所述步驟(2)的真偽檢測還可通過如下方法實現:后臺管理系統對收到的舉報圖像或視頻使用水印提取算法提取水印,并對提取的水印進行檢測來確定圖像在傳輸過程中是否遭到篡改。
作為優選,所述步驟(2)將舉報圖像或視頻進行分布式存儲的方法如下:
(I)對圖像或視頻進行base64處理,處理后采用公鑰K進行RSA運算RSAk(Fi);
(II)將RSAk(Fi)進行IDA算法運算,得到分散的圖像分片C1,C2,...,Cn,n為Fi的字節數;其中,IDA是數據分片備份容錯算法,IDA(n,m)運算過程如下:
(II.a)任取n個兩兩獨立的向量A1=[a11,a12,...,a1m],A2=[a21,a22,...,a2m],…,An=[an1,an2,...,anm],構建矩陣Anm=[A1,A2,...,An],其中取n個獨立向量算法;
(II.b)在Fi后面補0,其中補0個數為8×(m-n mod m),并分解成m×ceil(n/m)矩陣B,B的形式如下:
(II.c)由矩陣A叉乘B,得到n×ceil(n/m)矩陣C,按行分解矩陣C,生成圖像分片C1,C2,...,Cn,其中Ci為矩陣C的第i行圖像,長度為ceil(n/m)字節;
(III)使用SHA-2算法對獨立向量Ai和圖像分片Ci以及當前時刻T分別進行散列運算,即H(T||Ai||Ci),得到易于容錯分布式存儲的n個圖像分片P=P1||P2||...||Pn,其中Pi=T||Ai||Ci||H(T||Ai||Ci);
(IV)將n個圖像分片P進行容錯分布式儲存。
作為優選,所述的圖像完整性校驗方法如下:
(A)從分布式存儲器中取回需要驗證的圖像分片進行分解;
(B)對分解后的前三項進行SHA-2運算,初步判斷是否遭到篡改;
(C)對沒有遭到篡改的圖像分片進行反IDA運算后進行RSA和私鑰的解密,并進行base64的解碼;
(D)將解碼后的原始數據與待檢測數據進行SHA-2運算,可判斷是否遭到篡改。
一種應用如上所述方法的機動車違法行為隨手拍系統,包括:智能手機、后臺管理系統;所述智能手機帶有隨手拍客戶端,智能手機將拍攝機動車違法行為圖像或視頻和位置信息、車牌號、違法類型信息上傳至后臺管理系統,后臺管理系統用于對收到的舉報信息進行鑒別與認定,并將機動車違法信息進行曝光。
作為優選,所述的后臺管理系統包括基礎數據模塊、系統用戶模塊、舉報信息模塊、照片或視頻真偽檢測模塊、認定信息模塊和典型曝光模塊;系統用戶模塊分別與基礎數據模塊、舉報信息模塊、照片或視頻真偽檢測模塊、認定信息模塊和典型曝光模塊相連。
本發明的有益效果在于:(1)本發明滿足了現代交通管理工作的需要有效降低了交通違法舉報、取證的困難度,一定程度上遏制了交通違法現象的發生;(2)本發明解決了現有交通違法“隨手拍”活動中存在的時間和地點難以確定、不能一鍵式取證、舉報照片真實性無法得到保證等問題,便于民眾利用隨手拍客戶端的手機APP對機動車違法行為進行一鍵式拍攝取證。
附圖說明
圖1是本發明系統的隨手拍客戶端架構示意圖;
圖2是本發明系統的后臺管理系統架構示意圖;
圖3是本發明方法的總體流程示意圖;
圖4是本發明實施例的圖像視頻防篡改保護方法流程框圖;
圖5是本發明實施例的數據分布式存儲流程框圖;
圖6是本發明實施例的圖像完整性校驗流程框圖;
圖7是本發明實施例的圖像真偽檢測方法流程框圖。
具體實施方式
下面結合具體實施例對本發明進行進一步描述,但本發明的保護范圍并不僅限于此:
實施例:一種機動車違法行為隨手拍系統包括智能手機、后臺管理系統;所述智能手機帶有隨手拍客戶端,其中,隨手拍客戶端包括Android客戶端App和iOS客戶端App,如圖1所示,主要用于市民對機動車違法行為進行舉報,含有曝光欄、我的信息、我要舉報和我的舉報等功能,具體如下:
(1)曝光欄主要展示一些比較典型的機動車違法行為,對所有機動車駕駛員起到警示作用。
(2)我的信息主要顯示隨手拍客戶端用戶的姓名、手機號、電子郵箱、注冊時間以及修改密碼等功能。
(3)我要舉報顯示當前位置、違法位置、舉報說明、車牌、拍照舉報、視頻舉報等,其中位置信息由隨手拍客戶端自動定位獲取,若定位信息不精確的可由用戶對違法位置進行修正,用戶可拍攝3張不同角度的機動車違法行為照片或一段小視頻,并錄入車牌號和舉報說明后點擊舉報上傳即可。
(4)我的舉報主要顯示用戶的歷史舉報記錄,先展示舉報的時間、地點和照片,可點擊查看詳細的舉報信息。
另外,隨手拍客戶端還集成了圖像視頻防篡改保護方法的加載水印和數據加密功能,將交通違法行為的日期時間、地點、隨手拍字樣等信息以水印形式加載到原始圖片或視頻上,并進行加密,從而形成證據圖像或視頻,確保用戶上傳舉報機動車違法行為圖像在傳輸、核查認定過程中未被篡改。其中,機動車交通違法行為隨手拍系統僅允許通過隨手拍客戶端App軟件拍攝的照片進行即時上傳,不允許對原始照片進行修改,也不能從智能手機的相冊中提取照片進行上傳,以確保照片或視頻的真實性。
如圖2所示,后臺管理系統用于交警對舉報信息進行審核與認定,包括基礎數據、系統用戶、舉報信息、照片或視頻真偽檢測、認定信息和典型曝光等功能模塊具體如下:
(1)基礎數據包括地區管理、交警大隊管理和違法類型管理。
(2)系統用戶主要用于對用戶的管理,包括舉報用戶管理和交警用戶管理,可對用戶信息進行增、刪、改、查等管理。
(3)舉報信息主要用于對舉報信息的查詢、查看詳情、受理和審核等。
(4)照片或視頻真偽檢測主要負責對隨手拍客戶端上傳的照片或視頻進行真偽檢測,若檢測通過的,則自動將舉報圖像或視頻進行分布式存儲,若檢測通不過的,說明在傳輸過程中有數據丟失或被篡改的情況,則標注為無效舉報。
(5)認定信息主要用于對認定為違法行為的信息進行查詢與查看詳情。
(6)典型曝光主要用于對典型的違法行為進行曝光,包括對曝光記錄和輪播記錄的增、刪、改、查等管理。
另外,后臺管理系統還集成了圖像視頻防篡改保護的分布式存儲和圖像完整性校驗以及圖像真偽檢驗功能,確保舉報圖像的真實性,有效的防止虛假舉報、惡意舉報、證據作假現象的發生。
如圖3所示,一種機動車違法行為隨手拍方法具體步驟為:市民在智能手機上下載安裝隨手拍客戶端,可查看曝光的違法行為和自己的舉報;若發現有機動車出現違法行為,可啟動隨手拍客戶端進行舉報,隨手拍客戶端會自動定位當前位置,市民可拍攝3張不同角度的機動車違法行為照片或一段小視頻,并錄入車牌號和舉報說明后點擊舉報上傳;隨手拍客戶端會將舉報信息進行防篡改保護,并將交通違法行為的日期時間、地點、隨手拍字樣等信息以水印形式形成舉報圖像或視頻自動上傳至后臺管理系統;后臺管理系統會對舉報的圖像或視頻解密后自動進行真偽檢測,若檢測通過的,則自動將舉報圖像或視頻進行分布式存儲,若檢測通不過的,說明在傳輸過程中有數據丟失或被篡改的情況,則標注為無效舉報;對分布式存儲的舉報圖像,可隨時進行圖像完整性校驗,判斷圖像在后臺管理系統中是否遭到篡改;交警用戶登錄后臺管理系統后,可對舉報信息進行管理與審核,審核通過的,做出處罰認定,對情節嚴重的典型違法行為,予以曝光。
上述的交通違法行為圖像視頻防篡改保護方法將采用初始化、加載水印、數據加密、數據分布式存儲以及圖像完整性校驗等五個階段完成,流程框圖如圖4所示:
1、初始化階段
設隨手拍客戶端記為IDi,啟動后與后臺管理系統端建立連接,后臺管理系統端隨機分配密鑰Ki給隨手拍客戶端,并記錄Ki和隨手拍客戶端信息。
2、加載水印階段
隨手拍客戶端利用水印嵌入算法將由交通違法行為的日期時間、地點、隨手拍字樣等信息作為素材的水印嵌入到用戶拍攝的圖像中。
3、數據加密階段
設隨手拍客戶端需上傳的圖片或視頻數據為Di,拍攝的圖片或視頻位置信息為Li,日期時間為Ti。
a)用AES算法計算AESKi(IDi||Li||Ti),其中||為字符串連接符;
b)用SHA-2算法計算H(Ki||Di);
c)將以上兩步結果合并形成校驗碼H(Ki||Di)||AESKi(ID||Li||Ti);
d)將圖片或視頻數據Di形成證據資料Fi=Di||H(Ki||Di)||AESKi(IDi||Li||Ti),上傳給后臺管理系統。
4、數據分布式存儲階段
后臺管理系統將隨手拍客戶端上傳的舉報證據數據提取出圖像或視頻,使用水印提取算法提取水印,并對提取的水印進行檢測來確定圖像在傳輸過程中是否遭到篡改,若有篡改,則作為無效舉報處理,若沒有被篡改,則將隨手拍客戶端上傳的舉報證據數據Fi除正常存儲在數據庫中以方便核查外,為確保在核查、備份過程中被篡改,經得起司法的電子證據鑒定,需將Fi另外再分散存儲。實現的流程如圖5所示,步驟如下:
(1)對沒有被篡改圖像或視頻進行base64處理。
(2)將base64處理后的數據用公鑰K進行RSA運算RSAk(Fi)。
(3)然后將RSAk(Fi)進行IDA算法運算,得到分散的圖像分片C1,C2,...,Cn,這里n為Fi的字節數。IDA是一種數據分片備份容錯算法,IDA(n,m)運算的具體過程如下:
(a)任取n個兩兩獨立的向量A1=[a11,a12,...,a1m],A2=[a21,a22,...,a2m],…,An=[an1,an2,...,anm],構建矩陣Anm=[A1,A2,...,An],其中取n個獨立向量算法。
(b)在Fi后面補0,其中補0個數為8×(m-n mod m),接著分解成m×ceil(n/m)矩陣B,B的形式如下:
(c)由矩陣A叉乘B,得到n×ceil(n/m)矩陣C,按行分解矩陣C,生成圖像分片C1,C2,...,Cn,其中Ci為矩陣C的第i行圖像,長度為ceil(n/m)字節。
(4)使用SHA-2算法對獨立向量Ai和圖像分片Ci以及當前時刻T分別進行散列運算,即H(T||Ai||Ci),然后得到易于容錯分布式存儲的n個圖像分片P=P1||P2||...||Pn,其中Pi=T||Ai||Ci||H(T||Ai||Ci)。
(5)將n個圖像分片P通過安全通道傳輸至后臺管理系統進行容錯分布式儲存。
5、圖像完整性校驗階段
從后臺管理系統中取回需要驗證的圖像分片進行分解,對分解后的前三項進行SHA-2運算,初步判斷是否遭到篡改,對沒有遭到篡改的圖像分片進行反IDA運算,再進行RSA和私鑰的解密,然后進行base64的解碼,最后將解碼后的原始數據與待檢測數據進行SHA-2運算,從而來判斷是否遭到篡改,實現的流程框圖參見圖6,步驟如下:
(1)由驗證者從分布式存儲服務器中取回同一時刻超過m個的圖像分片Pi,分解Pi為T、Ai、Ci和H(T||Ai||Ci)四項,對前三項進行SHA-2運算與第四項H(T||Ai||Ci)作比較,從而確定該圖像是否遭篡改。
(2)任取m個確認未遭篡改的圖像分片Pi,分解圖像,進行反IDA運算,過程如下:
(a)分解m個圖像分片Pi,將各自的第二項Ai組成矩陣A,將各自的第三項Ci組成矩陣C,即A=(A1,A2,...,Am),C=(C1,C2,...,Cm)。
(b)根據A1,A2,...,Am是兩兩獨立的,可以求出矩陣A的逆矩陣A-1。
(c)由矩陣A-1叉乘C即可得到矩陣B,分解B后即可得到原始的加密數據RSAk(Fi)。
(3)利用RSA算法和私鑰對RSAk(Fi)進行解密,再進行base64解碼,將得到的原始數據與待檢測的圖片或視頻數據進行SHA-2運算,即可判斷是否被篡改。
其中,后臺管理系統對舉報的圖像或視頻解密后自動進行真偽檢測的方法除了使用水印提取算法提取水印,并對提取的水印進行檢測來確定圖像在傳輸過程中是否遭到篡改外,還可為首先將待檢測的圖像進行高斯金字塔變換以降低維數;然后將進行高斯金字塔變換以后得到的低頻分量分解成有重疊區域的小塊,從中提取每塊的固有特征;接著對所有的特征向量進行排序,用以降低算法時間復雜度;選擇適當的塊匹配閥值來確定相似塊對,最后通過一些形態學的方法去除錯誤塊,最終得到圖片被篡改的區域。實現的流程參見圖7,步驟如下:
(1)輸入待檢測圖像A;
(2)對圖像數據進行高斯金字塔分解,提取低頻分量B;
(3)將分解后的圖像數據分塊處理,塊與塊之間有一行或一列不相交;
(4)提取每塊的4個特征值并以向量Vj的形式表示,Vj=(f1,f2,f3,f4)';
(5)按照每個特征向量的第一個元素f1值的大小進行排序,在排序的過程中同時記錄下Vj所對應的塊在原始圖像矩陣B中的位置,以每塊的中心即同心圓圓心坐標(xj,yj)表示;
(6)比較特征向量Vj和它相鄰一定范圍內的其他特征向量Vi=(i∈[j-e,j+e]且i≠j),計算相似度Res,取其中最小的一個值和設定的塊相似閾值進行比較,若符合條件Res<Rest,其中:
且L>Lt,則標記坐標(xj,yj)上對應的位置,記為1,存儲在矩陣W(xj,yj)中。若不存在這樣的相似對塊,則將對應位置標記為0;
(7)通過數學形態學的處理方法去除一些滿足上述條件的孤立塊,利用腐蝕膨脹進行區域填充,填補檢測到的連通圖像塊中的空洞;
(8)對檢測結果進行采樣并根據篡改面積閾值最終是否有被篡改的區域存在,從而確認輸入的原始圖像是否真實。
上述方法可防止惡意者采用技術手段通過隨手拍客戶端App軟件上傳偽造過的圖像進行無效舉報的問題。
以上的所述乃是本發明的具體實施例及所運用的技術原理,若依本發明的構想所作的改變,其所產生的功能作用仍未超出說明書及附圖所涵蓋的精神時,仍應屬本發明的保護范圍。