蒙太奇與OpenCV(P2)
最后一個(gè)代碼塊將蒙太奇顯示到屏幕上:
在第38行,我們?cè)诿總€(gè)蒙太奇上循環(huán)(同樣,類似于在頁(yè)面上顯示N個(gè)(假的)“搜索結(jié)果”)。
第39行和第40行將當(dāng)前蒙太奇顯示在屏幕上。CV2。waitKey調(diào)用暫停腳本的執(zhí)行,直到我們選擇當(dāng)前活動(dòng)的窗口并按下鍵盤上的任何鍵。這將導(dǎo)致for循環(huán)前進(jìn)。
一旦我們到達(dá)蒙太奇列表的末尾,腳本就會(huì)退出。
展示蒙太奇
大約兩年前,我參與了一個(gè)計(jì)算機(jī)視覺(jué)項(xiàng)目,該項(xiàng)目要求我建立一個(gè)簡(jiǎn)單的圖像時(shí)尚搜索引擎。為了實(shí)現(xiàn)這一點(diǎn),我構(gòu)建了一個(gè)簡(jiǎn)單的網(wǎng)絡(luò)爬蟲(chóng)來(lái)爬行Nordstrom。com下載所有產(chǎn)品圖片和相關(guān)元數(shù)據(jù)。
今天,我們將在演示build_montages函數(shù)時(shí)使用這些數(shù)據(jù)的一個(gè)小樣本。
使用下面的“下載”部分下載源代碼+示例圖像后,可以執(zhí)行以下命令查看結(jié)果:
$python montage_example.py --images nordstrom_sample
執(zhí)行腳本后,您應(yīng)該會(huì)看到類似于以下內(nèi)容的輸出:

注意:你在蒙太奇中看到的確切圖像與我的不同,因?yàn)槲覀兪菑妮斎肽夸浿须S機(jī)抽樣的。
如圖1所示,我們有三行,每行包含七個(gè)圖像。蒙太奇中的每個(gè)圖像都已調(diào)整為128 x 196像素的固定大小。
根據(jù)布萊恩在這篇博文頂部提出的問(wèn)題,這個(gè)蒙太奇可能是他的圖像搜索引擎算法的搜索結(jié)果。
作為第二個(gè)示例,讓我們?cè)黾?-示例,這樣我們就可以創(chuàng)建多個(gè)蒙太奇,因?yàn)樗袌D像都不適合三行七列格式:
$python montage_example.py?--images nordstrom_sample——sample33
由于3x7=21,我們知道采樣33張圖像不可能適合21張圖像的蒙太奇。
幸運(yùn)的是,build_montages函數(shù)意識(shí)到一個(gè)蒙太奇中包含的圖像太多,因此創(chuàng)建了兩個(gè)蒙太奇。
第一個(gè)蒙太奇可以在下面看到,蒙太奇中的所有21個(gè)空間都被占用了:

第二個(gè)蒙太奇包含了第一個(gè)蒙太奇中無(wú)法容納的剩余12幅圖像:

請(qǐng)注意蒙太奇中的空白區(qū)域是如何被黑色像素填充的。