基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)大數(shù)據(jù)分析挖掘技術(shù)領(lǐng)域,具體涉及到互聯(lián)網(wǎng)(包含移動(dòng)互聯(lián)網(wǎng))、手機(jī)和電腦等可聯(lián)網(wǎng)終端、Hadoop和Spark等大數(shù)據(jù)分析挖掘工具,尤其涉及一種基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車方法和系統(tǒng)。
【背景技術(shù)】
[0002]海量車牌自動(dòng)識別(The Automatic Number Plate Recognit1n)數(shù)據(jù)是對交通攝像頭捕捉到的道路交通數(shù)據(jù)進(jìn)行處理生成的數(shù)據(jù),簡稱ANPR數(shù)據(jù),至少包含〈車牌號,監(jiān)測點(diǎn),時(shí)間點(diǎn) > 三個(gè)字段的信息。
[0003]Hadoop是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式存儲和處理的軟件框架,它以一種可靠、高效、可伸縮的方式進(jìn)行數(shù)據(jù)處理;HDFS是Hadoop框架中的一個(gè)高度容錯(cuò)性的用于存儲管理數(shù)據(jù)的文件系統(tǒng),能提供高吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。Spark是繼Hadoop之后的新一代大數(shù)據(jù)分布式處理框架,是一個(gè)基于內(nèi)存計(jì)算的開源集群計(jì)算系統(tǒng)。
[0004]可拼車車輛組的查詢分為有目標(biāo)車牌號和無目標(biāo)車牌號的可拼車車輛組查詢,基于Hadoop和Spark等技術(shù),可以對海量車牌自動(dòng)識別數(shù)據(jù)進(jìn)行分析處理,為動(dòng)態(tài)拼車系統(tǒng)提供了技術(shù)可行性。
[0005]當(dāng)前的拼車方法一般主要基于用戶輸入的出發(fā)地、目的地以及出發(fā)時(shí)間等信息進(jìn)行匹配篩選,無法及時(shí)在用戶出行路線變換(包括出發(fā)地、目的地變化或出發(fā)地和目的地相同但途徑路線變化)時(shí)做出動(dòng)態(tài)調(diào)整。動(dòng)態(tài)拼車方法通過對海量車牌識別數(shù)據(jù)的分析,根據(jù)用戶的出行軌跡,無需用戶輸入出發(fā)地和目的地,通過指定目標(biāo)車牌號和時(shí)間范圍或者只指定時(shí)間范圍來發(fā)現(xiàn)拼車對象,并可根據(jù)用戶出行路線及時(shí)進(jìn)行動(dòng)態(tài)調(diào)整。其中指定目標(biāo)車牌號和時(shí)間范圍適用于用戶在已知某一車輛車牌號,需要查詢某段時(shí)間可拼車車輛組的場景;只指定一段時(shí)間則適用于僅通過給定時(shí)間范圍查詢所有可拼車車輛組的場景。
[0006]由于車牌識別數(shù)據(jù)的數(shù)據(jù)量大,現(xiàn)有技術(shù)很難基于對海量車牌識別數(shù)據(jù)的高效分析來進(jìn)行動(dòng)態(tài)拼車。據(jù)統(tǒng)計(jì),中國一個(gè)大型城市部署的帶車牌識別功能的攝像頭可達(dá)到5000個(gè),高峰期每個(gè)攝像頭車牌識別數(shù)據(jù)的采集頻率可達(dá)I條/秒,每天的交通高峰折算率按0.33統(tǒng)計(jì)的話,則一天的車輛識別數(shù)據(jù)記錄數(shù)將達(dá)到1.44億條,數(shù)據(jù)量約12G。當(dāng)前技術(shù)在處理如此大量的車牌自動(dòng)識別數(shù)據(jù)時(shí)往往存在計(jì)算和存儲的瓶頸,查詢和分析需要很長的時(shí)間,不能及時(shí)的將查詢分析結(jié)果反饋給用戶。
[0007]隨著硬件和軟件技術(shù)的發(fā)展,大規(guī)模并行處理技術(shù)的成熟,針對現(xiàn)有拼車方法和系統(tǒng)存在的上述問題,有必要在云計(jì)算環(huán)境下的數(shù)據(jù)并行處理與分析框架的基礎(chǔ)上,發(fā)明一種為用戶提供高效的動(dòng)態(tài)拼車對象發(fā)現(xiàn)的方法和系統(tǒng),及時(shí)準(zhǔn)確的將拼車對象發(fā)現(xiàn)結(jié)果反饋給用戶。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的在于解決上述現(xiàn)有方法和系統(tǒng)中存在的問題,基于Hadoop和Spark等技術(shù),提出一種高效的利用海量車牌自動(dòng)識別數(shù)據(jù),對在同一時(shí)段共同出現(xiàn)在一定數(shù)量監(jiān)測點(diǎn)的車輛進(jìn)行并行分析和挖掘,來發(fā)現(xiàn)可拼車車輛組的動(dòng)態(tài)拼車方法和系統(tǒng)。
[0009]基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車方法和系統(tǒng)包括動(dòng)態(tài)拼車方法和系統(tǒng)兩部分。動(dòng)態(tài)拼車系統(tǒng)基于云計(jì)算環(huán)境下的Hadoop和Spark并行框架,通過高效的分析處理數(shù)據(jù),及時(shí)準(zhǔn)確的為用戶提供拼車推薦服務(wù)。不同于傳統(tǒng)拼車方法和系統(tǒng)需要出發(fā)地和目的地等作為查詢條件,該方法和系統(tǒng)通過給定一段時(shí)間范圍,即可對共同出現(xiàn)在一定數(shù)量監(jiān)測點(diǎn)的車輛進(jìn)行分析和挖掘,實(shí)現(xiàn)可拼車車輛組的動(dòng)態(tài)推薦功能。動(dòng)態(tài)拼車方法分為以下步驟:(1)獲取用戶查詢條件(2)查詢車輛軌跡(3)查詢點(diǎn)伴隨車輛組(4)查詢可拼車車輛組(5)產(chǎn)生拼車推薦結(jié)果(6)將推薦結(jié)果反饋給用戶。其中步驟(2) (3) (4) (5)都是基于Spark框架進(jìn)行的分布式并行查詢與分析,特別是步驟(4),使用并行化的頻繁項(xiàng)集發(fā)現(xiàn)算法來挖掘可拼車車輛組。
[0010]該動(dòng)態(tài)拼車方法和系統(tǒng)所處理的數(shù)據(jù)是海量車牌自動(dòng)識別數(shù)據(jù),是對交通攝像頭捕捉到的海量道路交通數(shù)據(jù)進(jìn)行處理后生成的數(shù)據(jù),數(shù)據(jù)至少包含〈車牌號,監(jiān)測點(diǎn),時(shí)間點(diǎn)〉三個(gè)字段的信息。一一是否數(shù)據(jù)分析層完成
[0011]基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車方法是根據(jù)一段時(shí)間范圍內(nèi)車輛所經(jīng)過的監(jiān)測點(diǎn)位置序列得到車輛軌跡,根據(jù)車輛軌跡得到一定時(shí)間范圍內(nèi)共同經(jīng)過同一監(jiān)測點(diǎn)的點(diǎn)伴隨車輛組,根據(jù)點(diǎn)伴隨車輛組得到一定時(shí)間內(nèi)在一定數(shù)目的監(jiān)測點(diǎn)共同出現(xiàn)的可拼車車輛組。其中,可拼車車輛是指可以提供拼車服務(wù)的車主的車輛,有拼車需求的人可以搭乘此車輛進(jìn)行拼車,可拼車車輛的集合稱為可拼車車輛組。一定數(shù)目的監(jiān)測點(diǎn)數(shù)量必須大于等于設(shè)定的監(jiān)測點(diǎn)數(shù)量閾值,而監(jiān)測點(diǎn)閾值由系統(tǒng)根據(jù)不同時(shí)段車流量自動(dòng)設(shè)定。
[0012]一種基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車方法和系統(tǒng),包含以下幾個(gè)層次:
(1)數(shù)據(jù)采集層。負(fù)責(zé)采集從城市交通攝像頭中產(chǎn)生的監(jiān)控?cái)?shù)據(jù),并將數(shù)據(jù)輸送到存儲層O
(2)存儲層。存儲層由HDFS和關(guān)系數(shù)據(jù)庫組成,分別負(fù)責(zé)存儲從采集層傳送過來的監(jiān)控?cái)?shù)據(jù)和從數(shù)據(jù)分析層傳送過來的處理后的結(jié)果數(shù)據(jù)。
(3)數(shù)據(jù)分析層。根據(jù)服務(wù)層傳送過來的用戶查詢條件利用Spark框架分析處理HDFS中的監(jiān)控?cái)?shù)據(jù),并將分析結(jié)果存儲到關(guān)系數(shù)據(jù)庫中。
(4)服務(wù)層。接收用戶輸入的查詢條件,將查詢條件傳送給數(shù)據(jù)分析層,并負(fù)責(zé)從關(guān)系數(shù)據(jù)庫中查詢數(shù)據(jù)分析層處理后的結(jié)果,將查詢分析結(jié)果返回給用戶。
[0013]用戶通過前臺操作界面或者REST對外服務(wù)接口輸入查詢條件,系統(tǒng)通過后臺獲取用戶輸入的查詢條件。查詢條件可包括:(I)目標(biāo)車牌號和起止時(shí)間;(2)起止時(shí)間。
[0014]查詢條件分別對應(yīng)系統(tǒng)的兩種查詢分析功能,分別是有目標(biāo)車牌號的可拼車車輛組查詢和無目標(biāo)車牌號的可拼車車輛組查詢,其中“目標(biāo)車牌號”是指已知的某車輛的車牌號,可以查詢與其行駛路線相似的其他可拼車的車輛組。
[0015]本發(fā)明提出的一種基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車方法和系統(tǒng)中,動(dòng)態(tài)拼車分析模塊包括以下四個(gè)數(shù)據(jù)分析處理子模塊:
(I)車輛軌跡查詢子模塊。根據(jù)用戶輸入的查詢條件,基于海量車牌自動(dòng)識別數(shù)據(jù),通過后臺查詢目標(biāo)車輛或所有車輛的軌跡。 (2)點(diǎn)伴隨車輛組查詢子模塊。根據(jù)車輛軌跡計(jì)算點(diǎn)伴隨車輛組。
(3)可拼車車輛組查詢子模塊。對點(diǎn)伴隨車輛組利用關(guān)聯(lián)規(guī)則分析方法,基于頻繁子集發(fā)現(xiàn)算法計(jì)算可拼車車輛組。然后將可拼車車輛組的查詢結(jié)果存入關(guān)系數(shù)據(jù)庫便于查詢。
(4)拼車推薦子模塊。根據(jù)上下文中的用戶個(gè)人信息和歷史查詢記錄,結(jié)合可拼車車輛組的查詢結(jié)果,將拼車推薦結(jié)果按照匹配優(yōu)先級排序后存儲到關(guān)系數(shù)據(jù)庫中便于服務(wù)層將結(jié)果反饋給用戶。
本發(fā)明還包括以下方案
一種基于海量車牌自動(dòng)識別數(shù)據(jù)的動(dòng)態(tài)拼車系統(tǒng),其特征在于該系統(tǒng)包括數(shù)據(jù)采集模塊、存儲模塊、數(shù)據(jù)分析模塊和服務(wù)模塊,其中:
數(shù)據(jù)采集模塊采集從城市交通攝像頭中產(chǎn)生的監(jiān)控?cái)?shù)據(jù),并將數(shù)據(jù)輸送到存儲模塊;存儲模塊存儲從數(shù)據(jù)采集模塊傳送過來的監(jiān)控?cái)?shù)據(jù)和從數(shù)據(jù)分析模塊傳送過來的處理后的結(jié)果數(shù)據(jù);
數(shù)據(jù)分析模塊根據(jù)服務(wù)模塊傳送過來的用戶查詢條件分析處理存儲模塊中的監(jiān)控?cái)?shù)據(jù),并將分析結(jié)果存儲到存儲模塊中;
服務(wù)模塊接收用戶輸入的查詢條件,將查詢條件傳送給數(shù)據(jù)分析模塊,并從存儲模塊中查詢數(shù)據(jù)分析模塊處理后的結(jié)果,將查詢分析結(jié)果返回給