扩展源_视觉框架SimpleCV - 图像源
關(guān)聯(lián)知識(shí)
- Python
- SimpleCV
SimpleCV框架支持大多數(shù)通過(guò)各種接口(例如USB,FireWire或內(nèi)置網(wǎng)絡(luò)攝像頭)連接到計(jì)算機(jī)的攝像機(jī)。 它可以訪問(wèn)通過(guò)有線或無(wú)線連接連接的網(wǎng)絡(luò)IP攝像機(jī)。 它甚至可以與許多視頻捕獲板進(jìn)行交互,這些視頻捕獲板可與各種模擬視頻輸入(例如復(fù)合視頻,分量視頻和S視頻)一起使用。
除了連接相機(jī)外,還有其他選項(xiàng),例如是使用單色相機(jī)還是彩色相機(jī),還是使用帶CCD或CMOS圖像傳感器的相機(jī)。 一些照相機(jī)記錄光譜的不同部分,例如可見(jiàn)光,紅外或紫外線。 然后,總有多少錢可以選擇,因?yàn)槿缃竦南鄼C(jī)價(jià)格從非常便宜到非常昂貴。 使用所有這些選項(xiàng),最簡(jiǎn)單的方法是從基本的網(wǎng)絡(luò)攝像頭甚至本地圖像文件開(kāi)始。
圖像,圖像集和視頻
SimpleCV框架不需要照相機(jī)即可處理圖像。 相反,它使加載和保存以前捕獲并保存到磁盤的圖像變得容易。 這對(duì)于使用預(yù)先存在的圖像源以及保存從相機(jī)捕獲的圖像非常有用,以便以后可以處理它們。 下面演示了加載圖像文件的三種方法:
代碼略
上面示例中的第一種方法是加載SimpleCV徽標(biāo),該徽標(biāo)與SimpleCV軟件捆綁在一起。 其他捆綁的圖像包括:
simplecv:SimpleCV徽標(biāo)
logo:另一種SimpleCV徽標(biāo)
logo_inverted:徽標(biāo)的反向版本
logo_transparent:具有透明背景的徽標(biāo)版本
lenna:在許多常見(jiàn)的圖像處理文本中都可以找到“ Lenna”圖像
上述圖像示例如下:
圖像略
保存圖像與加載圖像一樣容易。 通常,保存是通過(guò)將文件名傳遞給save()函數(shù)來(lái)完成的。 作為一種快捷方式,如果已經(jīng)從磁盤加載了映像,則只需調(diào)用不帶參數(shù)的save()函數(shù)將覆蓋原始映像。 或者,傳遞新的文件名會(huì)將映像的新副本保存到磁盤。 演示一些選項(xiàng):
代碼略
提示:保存從內(nèi)置圖像加載的文件或直接從Internet獲取的文件時(shí),必須提供文件名。
SimpleCV圖像庫(kù)實(shí)際上會(huì)查看提供的文件擴(kuò)展名以確定圖像格式。 因此,擴(kuò)展名為.jpg的文件將另存為JPEG,擴(kuò)展名為.png的文件另存為PNG。 此操作與文件的原始格式無(wú)關(guān)。 例如,以下代碼是將圖像從JPEG轉(zhuǎn)換為PNG的簡(jiǎn)便方法。 文件擴(kuò)展名對(duì)于確定文件格式不區(qū)分大小寫,但是會(huì)影響文件名。 使用img.save(“ myfile.PNG”)和img.save(“ myfile.png”)都會(huì)創(chuàng)建一個(gè)PNG文件,但文件名將保留大寫字母。
圖像集
除了處理單個(gè)圖像文件外,處理大量圖像文件也是一項(xiàng)常見(jiàn)任務(wù)。 不是單獨(dú)加載它們,而是ImageSet()庫(kù)管理圖像集。 以下示例演示了如何使用ImageSet管理來(lái)自安全攝像機(jī)的一組文件的保存。 ImageSet()命令采用一個(gè)可選參數(shù):包含要加載圖像的目錄的路徑。 如果未提供目錄參數(shù),則ImageSet將創(chuàng)建一個(gè)可以添加圖像的空列表。
代碼略
作為有關(guān)ImageSet的最后說(shuō)明; 像Image一樣,ImageSet也具有show()函數(shù)。 當(dāng)在Image對(duì)象上調(diào)用show()函數(shù)顯示單個(gè)圖像時(shí),在ImageSet對(duì)象上調(diào)用時(shí)它將顯示幻燈片。 對(duì)于ImageSets,show函數(shù)采用一個(gè)參數(shù)來(lái)設(shè)置圖像之間暫停的秒數(shù)。 例如,ImageSet()。show(5)將顯示幻燈片,在顯示該組中的每個(gè)圖像之間有五秒的延遲。
Kinect圖像采集
是否想在不擁有Kinect的情況下使用Kinect代碼? Freenect項(xiàng)目具有一組稱為fakenect的驅(qū)動(dòng)程序,該驅(qū)動(dòng)程序偽造Kinect的安裝。 想要查詢更多的信息,參見(jiàn)鏈接/。
安裝
使用
如上所述,Kinect是標(biāo)準(zhǔn)2D相機(jī)與第二個(gè)深度傳感器的組合,以捕獲3D信息。 使用2D相機(jī)的整體結(jié)構(gòu)類似于本地相機(jī)。 但是,初始化相機(jī)略有不同:
代碼略
僅將Kinect用作標(biāo)準(zhǔn)的2D相機(jī)是非常浪費(fèi)金錢的。 Kinect是用于捕獲有關(guān)對(duì)象的基本深度信息的好工具。它測(cè)量的深度為0到1023之間的數(shù)字,其中0距離相機(jī)最近,而1023距離相機(jī)最遠(yuǎn)。 盡管Kinect捕獲的值介于0到1023之間,但是SimpleCV框架會(huì)自動(dòng)將該范圍縮小到0到255之間。 因?yàn)榕c其將深度圖視為數(shù)字?jǐn)?shù)組,通常它將其顯示為灰度圖像。 在此可視化中,附近的對(duì)象將顯示為深灰色,而遠(yuǎn)處的對(duì)象將為淺灰色或白色。 為了更好地理解這一點(diǎn),下面的示例演示了如何提取深度信息:
詳情參閱
視覺(jué)框架SimpleCV - 圖像源?viadean.com 與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的扩展源_视觉框架SimpleCV - 图像源的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java方面的文献综述怎么写_文献综述应
- 下一篇: 挂机脚本_叠猫猫逛店铺挂机脚本,每天稳定