一種基于攝像機(jī)的圖像生成方法和裝置制造方法
【專利摘要】本發(fā)明適用于安防監(jiān)控領(lǐng)域,提供了一種基于攝像機(jī)的圖像生成方法和裝置;接收監(jiān)控裝置發(fā)送的顯示比例;通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片;按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖;確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線;從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)控裝置。這樣,安防監(jiān)控中心的監(jiān)控裝置通過(guò)顯示比例顯示接收到的圖片(也即兩條裁剪線之間的全景圖),不會(huì)出現(xiàn)黑邊,也不會(huì)出現(xiàn)圖片扭曲或變形等異?,F(xiàn)象。
【專利說(shuō)明】一種基于攝像機(jī)的圖像生成方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于安防監(jiān)控領(lǐng)域,尤其涉及一種基于攝像機(jī)的圖像生成方法和裝置。
【背景技術(shù)】
[0002]現(xiàn)有安防監(jiān)控系統(tǒng)中,監(jiān)控中心的監(jiān)控裝置采用16:9的長(zhǎng)寬比對(duì)從每個(gè)異地?cái)z像機(jī)接收到的視頻流進(jìn)行顯示。
[0003]然而,現(xiàn)有的安防攝像機(jī)輸出的視頻流所包含的圖片并不是全都滿足16:9,如果監(jiān)控中心的監(jiān)控裝置直接采用接收到的圖片的長(zhǎng)寬比顯示時(shí),屏幕上下方會(huì)出現(xiàn)黑邊,影響瀏覽效果;如果監(jiān)控中心的監(jiān)控裝置采用16:9的長(zhǎng)寬比,會(huì)出現(xiàn)圖片的扭曲變形。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種基于攝像機(jī)的圖像生成方法和裝置,以解決安防監(jiān)控中心的監(jiān)控裝置所使用的顯示比例與攝像機(jī)輸出的圖片的長(zhǎng)寬比不一致,對(duì)瀏覽圖片造成影響的問(wèn)題。
[0005]一方面,本發(fā)明提供一種基于攝像機(jī)的圖像生成方法,應(yīng)用于由多個(gè)攝像頭拼接組成的攝像機(jī),所述基于攝像機(jī)的圖像生成方法包括:
[0006]接收監(jiān)控裝置發(fā)送的顯示比例;
[0007]通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片;
[0008]按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖;
[0009]確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線;
[0010]從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)
控裝置。
[0011]一方面,本發(fā)明還提供一種基于攝像機(jī)的圖像生成裝置,應(yīng)用于由多個(gè)攝像頭拼接組成的攝像機(jī),所述基于攝像機(jī)的圖像生成裝置包括:
[0012]顯示比例單元,用于接收監(jiān)控裝置發(fā)送的顯示比例;
[0013]存儲(chǔ)單元,用于通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片;
[0014]拼接單元,用于按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖;
[0015]裁剪線單元,用于確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線;
[0016]讀取單元,用于從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)控裝置。
[0017] 本發(fā)明的有益效果:預(yù)先從監(jiān)控裝置獲取監(jiān)控轉(zhuǎn)置所需的顯示比例,根據(jù)該顯示比例在所述全景圖(由每個(gè)所述攝像頭拍攝的圖片拼接而成)中確定出兩條裁剪線;從存儲(chǔ)器中的每個(gè)所述攝像頭拍攝的圖片中分別讀取部分全景圖(通過(guò)讀取出的部分全景圖能夠組成:兩條裁剪線之間的全景圖),將分別讀取的部分全景圖均發(fā)送至監(jiān)控裝置,監(jiān)控裝置將接收到的部分全景圖合并后,能夠合并成滿足顯示比例的圖片(也即兩條裁剪線之間的全景圖)。這樣,安防監(jiān)控中心的監(jiān)控裝置通過(guò)顯示比例顯示接收到的圖片(也即兩條裁剪線之間的全景圖),不會(huì)出現(xiàn)黑邊,也不會(huì)出現(xiàn)圖片扭曲或變形等異?,F(xiàn)象。
【專利附圖】
【附圖說(shuō)明】
[0018]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0019]圖1是本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法的實(shí)現(xiàn)流程圖; [0020]圖2是本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法中步驟S4的具體流程圖;
[0021]圖3是本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法中步驟S5的具體流程圖;
[0022]圖4是本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置的組成結(jié)構(gòu)圖;
[0023]圖5是本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置中裁剪線單元64的具體結(jié)構(gòu)圖;
[0024]圖6是本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置中讀取單元65的具體結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0025]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。為了說(shuō)明本發(fā)明所述的技術(shù)方案,下面通過(guò)具體實(shí)施例來(lái)進(jìn)行說(shuō)明。
[0026]在本發(fā)明實(shí)施例中,安防監(jiān)控系統(tǒng)至少由安防監(jiān)控裝置和至少一個(gè)攝像機(jī)組成。其中,所述監(jiān)控裝置位于監(jiān)控中心,監(jiān)控裝置可接收每個(gè)攝像機(jī)采集到的視頻流(由連續(xù)時(shí)間采集到的圖片組成),對(duì)從每個(gè)攝像機(jī)接收到的視頻流進(jìn)行顯示,顯示方式至少包括:1,顯示某一攝像機(jī)采集到的視頻流,可根據(jù)需要切換到對(duì)另一攝像機(jī)采集到的視頻流進(jìn)行顯示;2,通過(guò)同一顯示屏顯示所有攝像機(jī)采集到的視頻流,實(shí)現(xiàn)對(duì)從每個(gè)攝像機(jī)接收的視頻流進(jìn)行同步顯示,便于對(duì)監(jiān)控地點(diǎn)進(jìn)行全方位的同步監(jiān)控。其中,相對(duì)于設(shè)置于監(jiān)控中心的監(jiān)控裝置,安防監(jiān)控系統(tǒng)的攝像機(jī)是設(shè)置于異地的。
[0027]需說(shuō)明的是,本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法,適用于上述的安防監(jiān)控系統(tǒng),具體應(yīng)用于由多個(gè)攝像頭拼接組成的攝像機(jī),即要求該監(jiān)控系統(tǒng)中的攝像機(jī)至少具有兩個(gè)攝像頭;該攝像機(jī)通過(guò)其包括的每個(gè)攝像頭拍照,將拍攝到的圖片進(jìn)行拼接以組成全景圖。
[0028]圖1示出了本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法的工作流程,為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0029]本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法,如圖1所示,所述基于攝像機(jī)的圖像生成方法包括:
[0030]SI,接收監(jiān)控裝置發(fā)送的顯示比例。值得說(shuō)明的是,本發(fā)明實(shí)施例提供的攝像機(jī)具有對(duì)采集到的全景圖進(jìn)行圖片處理的功能,包括對(duì)圖片進(jìn)行裁剪發(fā)送。由于監(jiān)控裝置顯示圖片所使用的顯示比例與攝像機(jī)合成的全景圖的長(zhǎng)寬比不一樣;要求攝像機(jī)預(yù)先向監(jiān)控裝置發(fā)送請(qǐng)求,通過(guò)該請(qǐng)求讓監(jiān)控裝置向其發(fā)送所述顯示比例,攝像機(jī)確定僅向監(jiān)控裝置發(fā)送該合成的全景圖的哪部分。在本發(fā)明一【具體實(shí)施方式】中,監(jiān)控裝置顯示圖片所使用的所述顯示比例為16:9 ;優(yōu)選的是,監(jiān)控裝置顯示攝像頭發(fā)送的視頻流(由圖片組成)所使用的視頻顯示格式為1080P。
[0031]S2,通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片。具體在實(shí)施中,只是根據(jù)從監(jiān)控裝置獲得的顯示比例確定:本攝像機(jī)需將全景圖中的哪部分發(fā)送至該監(jiān)控裝置,以監(jiān)控裝置能夠?qū)邮盏降牟糠秩皥D按照顯示比例顯示。因此,針對(duì)攝像機(jī)中的每個(gè)所述攝像頭,可對(duì)拍攝到的圖片分別存儲(chǔ),而不需要對(duì)全景圖真正地進(jìn)行裁剪。在本發(fā)明一【具體實(shí)施方式】中,將每個(gè)攝像頭拍攝到的圖片,分別存儲(chǔ)在隨機(jī)存儲(chǔ)器(Double Data Rate SDRAM)中。
[0032]S3,按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖。
[0033]需說(shuō)明的是,具體在確定所述攝像頭的拼接順序時(shí),根據(jù)攝像頭需采集出的全景圖,分別確定每個(gè)攝像頭需對(duì)哪部分場(chǎng)景進(jìn)行拍攝(即確定攝像頭的拍攝角度),實(shí)現(xiàn)通過(guò)攝像機(jī)對(duì)全景圖所對(duì)應(yīng)的場(chǎng)景進(jìn)行拍攝,通過(guò)每個(gè)攝像頭拍攝出的圖片合成全景圖。
[0034]在本實(shí)施例中 ,對(duì)于攝像機(jī)中的攝像頭,由于攝像頭之間的間距不同、攝像頭的視角角度不同,會(huì)在對(duì)攝像機(jī)中每個(gè)攝像頭采集到的圖片的拼接造成影響;進(jìn)而在已確定攝像頭的視角角度的情況下,可調(diào)整攝像頭之間的間距,讓每個(gè)攝像頭拍攝到的圖片之間沒(méi)有重復(fù)部分(相鄰攝像頭之間拍攝到的圖片有少部分像素重疊),但每個(gè)攝像頭拍攝到的圖片可組成一幅圖像連續(xù)的、完整的全景圖。
[0035]在本發(fā)明一實(shí)施例中,對(duì)于步驟S3,所述將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖的步驟具體為:將相鄰所述攝像頭拍攝到的兩張圖片中的相同部分重疊,并按照所述攝像頭的拼接順序?qū)⑺兴鰯z像頭拍攝的圖片組成所述全景圖。
[0036]具體地,在已確定攝像頭的視角角度的情況下,可調(diào)整攝像頭之間的間距,讓相鄰攝像頭拍攝到的兩幅圖片之間存在重復(fù)部分,按照所述攝像頭的拼接順序依次將相鄰攝像頭拍攝到的兩幅圖片之間重復(fù)部分重疊,這樣將每個(gè)攝像頭拍攝到的圖片可組成一幅圖像連續(xù)的、完整的全景圖。
[0037]S4,確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線。值得說(shuō)明的是,由于監(jiān)控裝置顯示圖片所使用的顯示比例與攝像機(jī)合成的全景圖的長(zhǎng)寬比不一樣,需要在全景圖中按照所述顯示比例確定出兩條裁剪線。優(yōu)選的是,按照所述顯示比例確定出兩條裁剪線在全景圖中是對(duì)稱的。這樣,僅向監(jiān)控裝置發(fā)送全景圖中兩條裁剪線之間的部分全景圖;監(jiān)控裝置接收到的部分全景圖(兩條裁剪線之間的部分全景圖)是滿足顯示比例的,從而不會(huì)在監(jiān)控裝置的顯示屏幕中出現(xiàn)黑邊,也不會(huì)出現(xiàn)圖片扭曲或變形等異?,F(xiàn)象。對(duì)于兩條裁剪線以外的部分全景圖,則不向監(jiān)控裝置發(fā)送,節(jié)省了攝像頭與監(jiān)控裝置的數(shù)據(jù)通信量;并且,由于是將全景圖中兩邊視角的部分像素(兩條裁剪線以外的部分全景圖包含的)進(jìn)行丟棄,該部分像素組成的部分全景圖(相對(duì)于兩條裁剪線之間的部分全景圖)不是監(jiān)控中心監(jiān)控的重點(diǎn),進(jìn)而也不是全景圖中的重點(diǎn),所以可以舍去。
[0038]圖2示出了本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法中步驟S4的具體流程,為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0039]在本發(fā)明一實(shí)施例中,對(duì)于步驟S4,如圖2所示,所述確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線的步驟具體包括:
[0040]S41,計(jì)算所述全景圖的長(zhǎng)寬比;
[0041]S42,判斷所述全景圖的長(zhǎng)寬比是否大于所述顯示比例;
[0042]S43,如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,確定從兩端裁剪所述全景圖的長(zhǎng)度的兩條裁剪線;
[0043]S44,如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,確定從兩端裁剪所述全景圖的寬度的兩條裁剪線。
[0044]在本實(shí)施例中 ,具體在全景圖中確定兩條裁剪線時(shí),需要預(yù)先計(jì)算出所述全景圖的長(zhǎng)寬比。
[0045]進(jìn)而,如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,即全景圖過(guò)長(zhǎng),相對(duì)來(lái)說(shuō),過(guò)長(zhǎng)的部分全景圖記錄的信息不是監(jiān)控重點(diǎn),在全景圖中確定出從兩端裁剪所述全景圖的長(zhǎng)度的兩條裁剪線。優(yōu)選的是,用于從所述全景圖的長(zhǎng)度裁剪的兩條裁剪線在全景圖中是對(duì)稱的,兩條裁剪線的對(duì)稱中心線為全景圖沿全景圖的長(zhǎng)度方向的中心對(duì)稱線;即沿全景圖的長(zhǎng)度方向,兩條裁剪線分別距離全景圖的兩個(gè)圖像邊緣(長(zhǎng)度方向上的)是相同距離的。
[0046]進(jìn)而,如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,即全景圖過(guò)寬,相對(duì)來(lái)說(shuō),過(guò)寬的部分全景圖記錄的信息不是監(jiān)控重點(diǎn),在全景圖中確定出從兩端裁剪所述全景圖的寬度的兩條裁剪線;優(yōu)選的是,用于從所述全景圖的寬度裁剪的兩條裁剪線在全景圖中是對(duì)稱的,兩條裁剪線的對(duì)稱中心線為全景圖沿全景圖的寬度方向的中心對(duì)稱線;即沿全景圖的寬度方向,兩條裁剪線分別距離全景圖的兩個(gè)圖像邊緣(寬度方向上的)是相同距離的。
[0047]S5,從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)控裝置。
[0048]在本實(shí)施例中,獲取兩條所述裁剪線,是為了滿足顯示比例,去除裁剪線兩邊的圖像,將裁剪線間的那部分全景圖發(fā)送到監(jiān)控裝置,(僅是為了確定需要向監(jiān)控裝置發(fā)送全景圖的那部分全景圖)。這樣,具體在向監(jiān)控裝置發(fā)送時(shí),僅發(fā)送全景圖中的、兩條所述裁剪線之間的圖片,監(jiān)控裝置接收到的兩條所述裁剪線之間的圖片滿足顯示比例。這樣,監(jiān)控裝置可通過(guò)顯示比例對(duì)接收到的圖片進(jìn)行正常顯示,不會(huì)出現(xiàn)黑邊,也不會(huì)出現(xiàn)圖片扭曲或變形等異常現(xiàn)象。
[0049]圖3示出了本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法中步驟S5的具體流程,為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0050]作為本發(fā)明一優(yōu)選實(shí)施例,為了避免對(duì)從所述全景圖中的重疊部分進(jìn)行重復(fù)讀取,以及重復(fù)向監(jiān)控裝置發(fā)送,對(duì)于步驟S5進(jìn)行了優(yōu)化,如圖3所示,所述從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片的步驟具體包括步驟S51、步驟S52、步驟S53以及步驟S54,詳述如下:
[0051]S51,按照所述攝像頭的拼接順序依次從所述全景圖中的重疊部分分別確定一根重疊線,確定的重疊線的根數(shù)M為:將所述攝像機(jī)包含的攝像頭的個(gè)數(shù)K減I所得的差值,所述K和所述M均為正整數(shù)。具體地,在全景圖中對(duì)相鄰攝像頭拍攝的兩幅圖片中的重疊部分確定一根重疊線;通過(guò)該根重疊線劃分重疊部分,從而確定重疊部分的部分像素分別從相鄰兩幅圖中的哪副圖中讀??;例如:弟一攝像頭和弟攝像頭為相鄰的攝像頭,弟一攝像頭拍攝到的圖片與第二攝像頭拍攝到的圖片按照從左到右的順序合并并將相同部分重疊,在第一攝像頭拍攝到的圖片與第二攝像頭拍攝到的圖片中的重疊部分確定出一條重疊線,在從存儲(chǔ)器中讀取數(shù)據(jù)時(shí),對(duì)于重疊線以左的圖片則從存儲(chǔ)器中存儲(chǔ)的所述第一攝像頭拍攝到的圖片中讀取并向監(jiān)控裝置發(fā)送讀取到的圖片,對(duì)于重疊線以右的圖片則從存儲(chǔ)器中存儲(chǔ)的所述第二攝像頭拍攝到的圖片中讀取并向監(jiān)控裝置發(fā)送讀取到的圖片。依次類推,對(duì)于K個(gè)攝像頭拍攝的圖片,可依次確定出M根重疊線;在從存儲(chǔ)器中讀取圖片數(shù)據(jù)時(shí),通過(guò)M根重疊線將全景圖劃分成K個(gè)部分全景圖,對(duì)于一個(gè)部分全景圖,從K個(gè)攝像頭拍攝的圖片篩選出包含該個(gè)部分全景圖的圖片,從存儲(chǔ)器中的所述篩除出的圖片中讀取兩條裁剪線之間的該個(gè)部分全景圖,繼而依次完成對(duì)兩條裁剪線之間的K個(gè)部分全景圖的讀取,將讀取的兩條裁剪線之間的K個(gè)部分全景圖向監(jiān)控裝置發(fā)送。
[0052]優(yōu)選的是,在實(shí)時(shí)上述實(shí)施例提供的技術(shù)方案時(shí),為了均衡對(duì)各個(gè)攝像頭采集到的視頻數(shù)據(jù)的計(jì)算壓力,便于數(shù)據(jù)讀取,以及便于對(duì)每個(gè)攝像頭采集到的圖片中進(jìn)行等量讀取(即從每個(gè)攝像頭采集到的圖片中分別讀取相同數(shù)據(jù)量的像素),并通過(guò)等量讀取的像素能夠組成滿足顯示比例的兩條裁剪線之間的部分全景圖,對(duì)在全景圖中確定M根重疊線設(shè)定了以下規(guī)則:確定出的M根重疊線將兩條裁剪線之間的全景圖劃分出K個(gè)等間距子橫坐標(biāo)區(qū)間。
[0053]S52,以所述全景圖的長(zhǎng)度為橫坐標(biāo)方向和以所述全景圖的寬度為縱坐標(biāo)方向建立直角坐標(biāo)系,在所述直角坐標(biāo)系中確定每個(gè)所述攝像頭拍攝的圖片所包含的像素的坐標(biāo)值,在所述直角坐標(biāo)系中確定每條所述重疊線的橫坐標(biāo)值。
[0054]具體地,以全景圖的左下角為坐標(biāo)原點(diǎn)、以所述全景圖的長(zhǎng)度為橫坐標(biāo)方向和以所述全景圖的寬度為縱坐標(biāo)方向建立直角坐標(biāo)系,這樣,通過(guò)該直角坐標(biāo)系可確定:每個(gè)所述攝像頭拍攝的圖片所包含的像素的坐標(biāo)值,全景圖的邊沿,每條所述重疊線所經(jīng)過(guò)的坐標(biāo)點(diǎn);由于按照上述方式建立的直角坐標(biāo)系,確定出的每條所述重疊線都垂直于橫坐標(biāo)軸,進(jìn)而只需確定所述重疊線的橫坐標(biāo)值即可實(shí)現(xiàn)對(duì)全景圖的劃分。
[0055]S53,如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,在所述直角坐標(biāo)系中確定兩條裁剪線形成的橫坐標(biāo)區(qū)間,將兩條裁剪線形成的橫坐標(biāo)區(qū)間按照每條所述重疊線的橫坐標(biāo)值的小大順序劃分成K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第I個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖,所述I為[1,K]區(qū)間的正整數(shù)。
[0056]具體地,如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,代表全景圖的長(zhǎng)度過(guò)長(zhǎng),確定出的兩條裁剪線都與橫坐標(biāo)軸垂直,進(jìn)而確定出兩條裁剪線形成的橫坐標(biāo)區(qū)間,該兩條裁剪線形成的橫坐標(biāo)區(qū)間的像素即是需要從存儲(chǔ)器中讀取的數(shù)據(jù),即在全景圖中滿足該橫坐標(biāo)區(qū)間的像素組成的圖片能夠滿足顯示比例,也是需要發(fā)送給控制裝置的像素。
[0057]進(jìn)而為了避免對(duì)相鄰所述攝像頭拍攝的兩幅圖片中的重復(fù)部分進(jìn)行重復(fù)讀取,將兩條裁剪線形成的橫坐標(biāo)區(qū)間按照每條所述重疊線的橫坐標(biāo)值的小大順序劃分成K個(gè)子橫坐標(biāo)區(qū)間。如果需要從存儲(chǔ)器中讀取全景圖中第I個(gè)子橫坐標(biāo)區(qū)間的像素(第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖),預(yù)先從所有所述攝像頭拍攝的圖片中篩選出包含第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖的一張圖片,繼而直接從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖。需強(qiáng)調(diào)的是,對(duì)于篩選出的圖片與另一圖片(除該篩選出的圖片以外的、攝像頭拍攝的圖片)存在重復(fù)部分的情況,如果需要從存儲(chǔ)器中讀取該重復(fù)部分的圖片,對(duì)于第I個(gè)子橫坐標(biāo)區(qū)間的該重復(fù)部分的圖片僅從所述篩選出的圖片中讀取,對(duì)于不屬于第I個(gè)子橫坐標(biāo)區(qū)間的該重復(fù)部分的圖片則從該另一圖片中讀取。
[0058]S54,如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,在所述直角坐標(biāo)系中分別確定兩條裁剪線形成的縱坐標(biāo)區(qū)間,按照所述重疊線的橫坐標(biāo)值的小大順序?qū)⑺鋈皥D劃分出K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第J個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第J個(gè)子橫坐標(biāo)區(qū)間的、兩條裁剪線形成的縱坐標(biāo)區(qū)間的部分全景圖,所述J為[1,κ]區(qū)間的正整數(shù)。
[0059]具體地,如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,代表全景圖的寬度過(guò)寬,確定出的兩條裁剪線都與縱坐標(biāo)軸垂直,進(jìn)而確定出兩條裁剪線形成的縱坐標(biāo)區(qū)間,該兩條裁剪線形成的縱坐標(biāo)區(qū)間的像素即是需要從存儲(chǔ)器中讀取的數(shù)據(jù),即在全景圖中滿足該縱坐標(biāo)區(qū)間的像素組成的圖片能夠滿足顯示比例,也是需要發(fā)送給控制裝置的像素。
[0060]進(jìn)而為了避免對(duì)相鄰所述攝像頭拍攝的兩幅圖片中的重復(fù)部分進(jìn)行重復(fù)讀取,按照每條所述重疊線的橫坐標(biāo)值的小大順序劃分成K個(gè)子橫坐標(biāo)區(qū)間。如果需要從存儲(chǔ)器中讀取全景圖中處于縱坐標(biāo)區(qū)間的第J個(gè)子橫坐標(biāo)區(qū)間的像素(第J個(gè)子橫坐標(biāo)區(qū)間的部分全景圖),預(yù)先從所有所述攝像頭拍攝的圖片中篩選出包含第J個(gè)子橫坐標(biāo)區(qū)間的部分全景圖的一張圖片,繼而直接從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取處于縱坐標(biāo)區(qū)間和第J個(gè)子橫坐標(biāo)區(qū)間的部分全景圖。需強(qiáng)調(diào)的是,對(duì)于篩選出的圖片與另一圖片(除該篩選出的圖片以外的、攝像頭拍攝的圖片)存在重復(fù)部分的情況,如果需要從存儲(chǔ)器中讀取該重復(fù)部分的圖片,對(duì)于處于縱坐標(biāo)區(qū)間和第J個(gè)子橫坐標(biāo)區(qū)間的該重復(fù)部分的圖片僅從所述篩選出的圖片中讀取,對(duì)于處于縱坐標(biāo)區(qū)間而不處于第J個(gè)子橫坐標(biāo)區(qū)間的該重復(fù)部分的圖片則從該另一圖片中讀取。
[0061]本領(lǐng)域普通技術(shù)人員還可以理解,實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過(guò)程序指令及相關(guān)的硬件來(lái)完成,所述的程序可以在存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),包括R0M/RAM、磁盤、光盤等。
[0062]需要說(shuō)明的是,本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置與本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法相互適用。
[0063]圖4示出了本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置的組成結(jié)構(gòu),為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0064]本實(shí)施例提供的基于攝像機(jī)的圖像生成裝置,應(yīng)用于由多個(gè)攝像頭拼接組成的攝像機(jī),如圖4所示,所述基于攝像機(jī)的圖像生成裝置包括:
[0065]顯示比例單元61,用于接收監(jiān)控裝置發(fā)送的顯示比例;
[0066]存儲(chǔ)單元62,用于通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片;
[0067] 拼接單元63,用于按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖;
[0068]裁剪線單元64,用于確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線;
[0069]讀取單元65,用于從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)控裝置。
[0070]在本發(fā)明一實(shí)施例中,所述拼接單元63具體用于:將相鄰所述攝像頭拍攝到的兩張圖片中的相同部分重疊,并按照所述攝像頭的拼接順序?qū)⑺兴鰯z像頭拍攝的圖片組成所述全景圖。
[0071]圖5示出了本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置中裁剪線單元64的具體結(jié)構(gòu),為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0072]在本發(fā)明一實(shí)施例中,如圖5所示,所述裁剪線單元64包括: [0073]長(zhǎng)寬比單元641,用于計(jì)算所述全景圖的長(zhǎng)寬比;
[0074]判斷單元642,用于判斷所述全景圖的長(zhǎng)寬比是否大于所述顯示比例;
[0075]長(zhǎng)度裁剪確定單元643,用于如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,確定從兩端裁剪所述全景圖的長(zhǎng)度的兩條裁剪線;
[0076]寬度裁剪確定單元644,用于如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,確定從兩端裁剪所述全景圖的寬度的兩條裁剪線。。
[0077]圖6示出了本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置中讀取單元65的具體結(jié)構(gòu),為了便于描述,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
[0078]在本發(fā)明一實(shí)施例中,如圖6所示,所述讀取單元65包括:
[0079]重疊線單元651,用于按照所述攝像頭的拼接順序依次從所述全景圖中的重疊部分分別確定一根重疊線,確定的重疊線的根數(shù)M為:將所述攝像機(jī)包含的攝像頭的個(gè)數(shù)K減I所得的差值,所述K和所述M均為正整數(shù);
[0080]坐標(biāo)系單元652,用于以所述全景圖的長(zhǎng)度為橫坐標(biāo)方向和以所述全景圖的寬度為縱坐標(biāo)方向建立直角坐標(biāo)系,在所述直角坐標(biāo)系中確定每個(gè)所述攝像頭拍攝的圖片所包含的像素的坐標(biāo)值,在所述直角坐標(biāo)系中確定每條所述重疊線的橫坐標(biāo)值;
[0081 ] 第一子讀取單元653,用于如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,在所述直角坐標(biāo)系中確定兩條裁剪線形成的橫坐標(biāo)區(qū)間,將兩條裁剪線形成的橫坐標(biāo)區(qū)間按照每條所述重疊線的橫坐標(biāo)值的小大順序劃分成K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第I個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖,所述I為[1,K]區(qū)間的正整數(shù);
[0082]第二子讀取單元654,用于如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,在所述直角坐標(biāo)系中分別確定兩條裁剪線形成的縱坐標(biāo)區(qū)間,按照所述重疊線的橫坐標(biāo)值的小大順序?qū)⑺鋈皥D劃分出K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第J個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第J個(gè)子橫坐標(biāo)區(qū)間的、兩條裁剪線形成的縱坐標(biāo)區(qū)間的部分全景圖,所述J為[1,K]區(qū)間的正整數(shù)。
[0083]10、如權(quán)利要求9所述的基于攝像機(jī)的圖像生成裝置,其特征在于,確定出的M根重疊線將兩條裁剪線之間的全景圖劃分出K個(gè)等間距子橫坐標(biāo)區(qū)間。[0084]本領(lǐng)域技術(shù)人員可以理解為本分實(shí)施例提供的基于攝像機(jī)的圖像生成裝置所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0085]作為本發(fā)明一實(shí)施例,本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成方法可在可編程邏輯器件(如現(xiàn)場(chǎng)可編程門陣列(Field — Programmable Gate Array,FPGA))編程實(shí)現(xiàn)。作為本發(fā)明一實(shí)施例,本發(fā)明實(shí)施例提供的基于攝像機(jī)的圖像生成裝置可通過(guò)對(duì)可編程邏輯器件編程得到。
[0086]以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對(duì)本發(fā)明所作的進(jìn)一步詳細(xì)說(shuō)明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說(shuō)明。對(duì)于本發(fā)明所屬【技術(shù)領(lǐng)域】的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下做出若干等同替代或明顯變型,而且性能或用途相同,都應(yīng)當(dāng)視為屬于本發(fā)明由所提 交的權(quán)利要求書確定的專利保護(hù)范圍。
【權(quán)利要求】
1.一種基于攝像機(jī)的圖像生成方法,其特征在于,應(yīng)用于由多個(gè)攝像頭拼接組成的攝像機(jī),所述基于攝像機(jī)的圖像生成方法包括: 接收監(jiān)控裝置發(fā)送的顯示比例; 通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片; 按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖; 確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線; 從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)控裝置。
2.如權(quán)利要求1所述的基于攝像機(jī)的圖像生成方法,其特征在于,所述將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖的步驟具體為: 將相鄰所述攝像頭拍攝到的兩張圖片中的相同部分重疊,并按照所述攝像頭的拼接順序?qū)⑺兴鰯z像頭拍攝的圖片組成所述全景圖。
3.如權(quán)利要求2所述的基于攝像機(jī)的圖像生成方法,其特征在于,所述確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線的步驟具體包括: 計(jì)算所述全景圖的長(zhǎng)寬比; 判斷所述全景圖的長(zhǎng)寬比是否大于所述顯示比例; 如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,確定從兩端裁剪所述全景圖的長(zhǎng)度的兩條裁剪線; 如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,確定從兩端裁剪所述全景圖的寬度的兩條裁剪線。
4.如權(quán)利要求3所述的基于攝像機(jī)的圖像生成方法,其特征在于,所述從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片的步驟具體包括: 按照所述攝像頭的拼接順序依次從所述全景圖中的重疊部分分別確定一根重疊線,確定的重疊線的根數(shù)M為:將所述攝像機(jī)包含的攝像頭的個(gè)數(shù)K減I所得的差值,所述K和所述M均為正整數(shù); 以所述全景圖的長(zhǎng)度為橫坐標(biāo)方向和以所述全景圖的寬度為縱坐標(biāo)方向建立直角坐標(biāo)系,在所述直角坐標(biāo)系中確定每個(gè)所述攝像頭拍攝的圖片所包含的像素的坐標(biāo)值,在所述直角坐標(biāo)系中確定每條所述重疊線的橫坐標(biāo)值; 如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,在所述直角坐標(biāo)系中確定兩條裁剪線形成的橫坐標(biāo)區(qū)間,將兩條裁剪線形成的橫坐標(biāo)區(qū)間按照每條所述重疊線的橫坐標(biāo)值的小大順序劃分成K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第I個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖,所述I為[1,K]區(qū)間的正整數(shù); 如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,在所述直角坐標(biāo)系中分別確定兩條裁剪線形成的縱坐標(biāo)區(qū)間,按照所述重疊線的橫坐標(biāo)值的小大順序?qū)⑺鋈皥D劃分出K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第J個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第J個(gè)子橫坐標(biāo)區(qū)間的、兩條裁剪線形成的縱坐標(biāo)區(qū)間的部分全景圖,所述J為[1,K]區(qū)間的正整數(shù)。
5.如權(quán)利要求4所述的基于攝像機(jī)的圖像生成方法,其特征在于,確定出的M根重疊線將兩條裁剪線之間的全景圖劃分出K個(gè)等間距子橫坐標(biāo)區(qū)間。
6.一種基于攝像機(jī)的圖像生成裝置,其特征在于,應(yīng)用于由多個(gè)攝像頭拼接組成的攝像機(jī),所述基于攝像機(jī)的圖像生成裝置包括: 顯示比例單元,用于接收監(jiān)控裝置發(fā)送的顯示比例; 存儲(chǔ)單元,用于通過(guò)所述攝像機(jī)中的每個(gè)所述攝像頭進(jìn)行拍照,在存儲(chǔ)器中存儲(chǔ)每個(gè)所述攝像頭拍攝到的圖片; 拼接單元,用于按照所述攝像頭的拼接順序,將每個(gè)所述攝像頭拍攝的圖片拼接成一幅全景圖; 裁剪線單元,用于確定將所述全景圖裁剪成所述顯示比例的兩條裁剪線; 讀取單元,用于從所述存儲(chǔ)器中讀取兩條所述裁剪線之間的圖片,將讀取出的圖片發(fā)送至所述監(jiān)控裝置。
7.如權(quán)利要求6所述的基于攝像機(jī)的圖像生成裝置,其特征在于,所述拼接單元具體用于: 將相鄰所述攝像頭拍攝到的兩張圖片中的相同部分重疊,并按照所述攝像頭的拼接順序?qū)⑺兴鰯z像頭拍攝的圖片組成所述全景圖。
8.如權(quán)利要求7所述的基于攝像機(jī)的圖像生成裝置,其特征在于,所述裁剪線單元包括: 長(zhǎng)寬比單元,用于計(jì)算所述全景圖的長(zhǎng)寬比; 判斷單元,用于判斷所述全景圖的長(zhǎng)寬比是否大于所述顯示比例; 長(zhǎng)度裁剪確定單元,用于如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,確定從兩端裁剪所述全景圖的長(zhǎng)度的兩條裁剪線; 寬度裁剪確定單元,用于如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,確定從兩端裁剪所述全景圖的寬度的兩條裁剪線。
9.如權(quán)利要求8所述的基于攝像機(jī)的圖像生成方法,其特征在于,所述讀取單元包括: 重疊線單元,用于按照所述攝像頭的拼接順序依次從所述全景圖中的重疊部分分別確定一根重疊線,確定的重疊線的根數(shù)M為:將所述攝像機(jī)包含的攝像頭的個(gè)數(shù)K減I所得的差值,所述K和所述M均為正整數(shù); 坐標(biāo)系單元,用于以所述全景圖的長(zhǎng)度為橫坐標(biāo)方向和以所述全景圖的寬度為縱坐標(biāo)方向建立直角坐標(biāo)系,在所述直角坐標(biāo)系中確定每個(gè)所述攝像頭拍攝的圖片所包含的像素的坐標(biāo)值,在所述直角坐標(biāo)系中確定每條所述重疊線的橫坐標(biāo)值; 第一子讀取單元,用于如果所述全景圖的長(zhǎng)寬比大于所述顯示比例,在所述直角坐標(biāo)系中確定兩條裁剪線形成的橫坐標(biāo)區(qū)間,將兩條裁剪線形成的橫坐標(biāo)區(qū)間按照每條所述重疊線的橫坐標(biāo)值的小大順序劃分成K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第I個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第I個(gè)子橫坐標(biāo)區(qū)間的部分全景圖,所述I為[1,K]區(qū)間的正整數(shù);第二子讀取單元,用于如果所述全景圖的長(zhǎng)寬比小于所述顯示比例,在所述直角坐標(biāo)系中分別確定兩條裁剪線形成的縱坐標(biāo)區(qū)間,按照所述重疊線的橫坐標(biāo)值的小大順序?qū)⑺鋈皥D劃分出K個(gè)子橫坐標(biāo)區(qū)間,從所有所述攝像頭拍攝的圖片中篩選出包含第J個(gè)子橫坐標(biāo)區(qū)間的部分所述全景圖的一張圖片,從所述存儲(chǔ)器中存儲(chǔ)的、篩選出的圖片中讀取第J個(gè)子橫坐標(biāo)區(qū)間的、兩條裁剪線形成的縱坐標(biāo)區(qū)間的部分全景圖,所述J為[1,K]區(qū)間的正整數(shù)。
10.如權(quán)利要求9所述的基于攝像機(jī)的圖像生成裝置,其特征在于,確定出的M根重疊線將兩條裁剪線之 間的全景圖劃分出K個(gè)等間距子橫坐標(biāo)區(qū)間。
【文檔編號(hào)】H04N7/18GK104023203SQ201410155049
【公開日】2014年9月3日 申請(qǐng)日期:2014年4月17日 優(yōu)先權(quán)日:2014年4月17日
【發(fā)明者】吳雪梅, 彭俊, 閻妍, 范鐵道 申請(qǐng)人:深圳英飛拓科技股份有限公司