成功規(guī)范的重要標志是能夠在行業(yè)領導者和開源社區(qū)的共同推動下不斷進行改進。以太網(wǎng)、SCSI和JTAG規(guī)范已經(jīng)有幾十年的歷史,至今仍被廣泛使用,它們在經(jīng)歷多次更新后,其易用性和功能都得到了增強。
另一個例子當屬近期推出的“儀器使用和工業(yè)數(shù)碼相機規(guī)范2”(IIDC2),它是對IIDC1.3規(guī)范和數(shù)碼相機(DCAM)規(guī)范的重大改進。
圖1:三款分別由Hamamatsu、Sony和Toshiba Teli提供的IIDC2照相機連接到Technoscope的1394b轉發(fā)器和Express卡上,用于演示IIDC2規(guī)范的速度和可靠性。
由于消費類數(shù)碼攝像機生成的是壓縮音頻/視頻流,并符合音頻視頻控制規(guī)范(AV/C IEC-6188規(guī)范),因此其數(shù)碼攝像功能一般都是雙模設計。相比之下,儀器和工業(yè)數(shù)碼攝像機生成的則是未壓縮的視頻流(無音頻)并符合DCAM和IIDC 1.3規(guī)范。DCAM和IIDC 1.3規(guī)范包含豐富的攝像機控制功能,例如亮度、幀速率、快門速度和白平衡。所有這些功能都未包含在AV/C規(guī)范中。
針對實時應用的未壓縮視頻
儀器和工業(yè)數(shù)碼攝像機的獨特之處在于其側重點是未壓縮視頻、原始幀速率和高分辨率。未壓縮視頻處理能力對于安全系統(tǒng)和汽車倒車影像系統(tǒng)等實時應用來說具有關鍵意義,因為這類應用不允許有明顯的延遲出現(xiàn)。延遲是由消費類攝像機、網(wǎng)絡攝像頭和手機攝像頭中使用的壓縮程序造成的。高安全性應用在這方面的要求最為嚴格,最多只允許出現(xiàn)5毫秒的延遲。安全與機械視覺系統(tǒng)要求的幀速率非常高,一般要大于60幀/秒(fps),才能保持監(jiān)視和定位的準確性。IIDC攝像機的標準幀速率在1.875fps到60fps之間。Point Grey、Basler和Sony已經(jīng)利用擴展的IIDC寄存器將一般條件下的幀速率提高至100fps,而且在某個應用中實現(xiàn)了200fps的超高幀速率。高分辨率是安全和監(jiān)視應用最重要的性能指標。當今的IIDC攝像機分辨率可達到640x480至2448x2048,色深范圍介于8位/像素至24位/像素之間。
發(fā)展簡史
1394貿(mào)易協(xié)會于1996年制定了首個數(shù)碼攝像機規(guī)范,即IIDC 1.04。2008年升級為IIDC 1.32。早期IIDC規(guī)范選用的傳輸協(xié)議是IEEE 1394(FireWire),因為它的傳輸速度快(400Mb/s),總線供電能力強而且具有可靠的視頻數(shù)據(jù)交付能力。除了網(wǎng)絡攝像頭,IIDC 1.3還被廣泛應用于機械視覺和計算機視覺應用中,其中包括取得重大成功的Apple iSight攝像頭系列。
IIDC 1.3數(shù)字攝像機的普及程度日漸提高,原因在于:該規(guī)范采用菊花鏈這種簡單布線方式;而且由于IEEE-1394的總線供電能力高達45W,強于USB(2.5W)和以太網(wǎng)(0W)等其他串行總線技術,因此可以方便地利用總線為攝像機供電。IEEE-1394是一種早期的開放標準,而且具備合適的技術功能,這使得IIDC 1.32成為libdc1394、unicap和coriander等眾多數(shù)碼攝像機開源(Linux)社區(qū)項目的基礎。對Linux社區(qū)而言,“合適”的技術功能包括總線仲裁、帶寬分配,以及IEEE-1394所具備的低CPU開銷特性。之所以IEEE-1394具有較低的CUP開銷是因為每個IEEE-1394設備都有內置的硬件自主管理特性,即無需CPU就能實現(xiàn)器件枚舉功能。
早期DCAM和IIDC規(guī)范采用的控制和狀態(tài)寄存器(CSR)組織方式比較零散而且不連續(xù),因此難以應用于產(chǎn)品設計。從根本上講,IIDC 1系列規(guī)范使用扁平的線性寄存器映射,新增功能只能簡單地添加到線性列表的末尾。下表是從IIDC 1.32規(guī)范中摘錄的表格,顯示了在寄存器映射中分布的單個特性的INQ(特性)、功能實現(xiàn)和狀態(tài)。
表1:
另外,最初的DCAM和IIDC規(guī)范只能使用IEEE 1394傳輸方式
2009年,日本工業(yè)成像協(xié)會(JIIA)和1394貿(mào)易協(xié)會共同進行了一項開發(fā)工作,目的是將IIDC 1.32規(guī)范升級為更加“現(xiàn)代化”的標準。新規(guī)范將特性的全部元素集合到一個連續(xù)的寄存器空間內,使其得以更加方便地(成本更低)在產(chǎn)品中實施。開發(fā)IIDC2標準的目的是簡化工業(yè)攝像機的設計工作,而且當數(shù)碼攝像機與個人計算機連接時,計算機更容易檢測到攝像機的各種特性。IIDC2無法向后兼容IIDC 1.32規(guī)范。
相比之下,IIDC2規(guī)范將攝像機的控制、狀態(tài)、功能與傳輸介質進行分離。將攝像機的控制功能與高速數(shù)據(jù)傳輸機制進行隔離,便于在將來使用其他傳輸介質。
IIDC2規(guī)范要求利用標準結構將各項功能組織到不同的分類模塊中,并依據(jù)通用寄存器格式以固定的偏移量將模塊連接在表單中。這種方式類似于在USB、SATA和1394規(guī)范中得到成功使用的開放式主控制器接口(OHCI)格式。另外為簡化數(shù)據(jù)傳輸,IIDC2還吸收了更多的指令、流和流傳輸功能。下表取自IIDC2規(guī)范,列出了一系列具有相同結構的通用分類模塊,這些模塊用于描述IIDC2攝像機功能和狀態(tài)。
表2:
IIDC2定義了31種基本的分類模塊,用于實現(xiàn)IIDC2攝像機功能?;镜目刂颇K包括設備控制模塊以及針對傳輸層、圖像格式、采集、亮度和數(shù)字I/O的控制模塊
IIDC2原型于2011年11月在德國斯圖加特Vision Show上首次亮相,之后不久的2012年3月,IIDC2規(guī)范就得到了日本工業(yè)成像協(xié)會(JIIA)和1394貿(mào)易協(xié)會的批準。此外,今年四月舉辦的2012韓國Vision Show演示了更多IIDC2產(chǎn)品。
IIDC2產(chǎn)品將首先使用800MB/s的IEEE-1394傳輸方式實現(xiàn)數(shù)據(jù)傳輸和功率分配。將來的IIDC2數(shù)碼攝像機還可能采用以太網(wǎng)或者USB傳輸方式。