- 相關(guān)推薦
利用數(shù)碼相機SDK開發(fā)圖像采集應(yīng)用程序
摘要:介紹柯達公司的數(shù)碼相機開發(fā)套件SDK DC280、SDK的結(jié)構(gòu)及其函數(shù)分類,并提供了一個典型的編程實例。關(guān)鍵詞:SDK 數(shù)碼相機 開發(fā)
數(shù)碼相機作為一種目前常見的消費類商品,其基本工作原理是利用CCD光耦器件將光信號轉(zhuǎn)變?yōu)殡娦盘,?jīng)過A/D轉(zhuǎn)換、數(shù)據(jù)壓縮等處理后經(jīng)串口或USB口在PC端應(yīng)用程序控制下將圖片(多為JPEG格式)傳送到PC機的硬盤中。目前PC端的應(yīng)用程序都由相機制造商所提供。很少有人注意到一些數(shù)碼相機制造商為開發(fā)人員提供了相對豐富的SDK(Software Development Kit)資源,便于有關(guān)人員利用數(shù)碼相機進行圖像采集和監(jiān)測方面的開發(fā)工作。SDK開發(fā)套件一般由頭文件(.H)、庫文件(.lib)和動態(tài)鏈接庫文件(.dll)組成。美國柯達公司是世界相機制造業(yè)和諸多影像標(biāo)準(zhǔn)制定的帶頭兵。本文將以KODAK DC280 SDK為例對SDK及其應(yīng)用作介紹,以使感興趣的開發(fā)人員可以自編程序?qū)?shù)據(jù)相機應(yīng)用在工程項目中。
1 SDK結(jié)構(gòu)圖
DC280 SDK原理框圖如圖1所示。SDK控制層位于應(yīng)用程序與指定SDK控制層(對于DS280相機此層為DC280SDK控制層)之間,它的主要作用是接收應(yīng)用程序的DC280_OpenCamera()指令,同時將指定相機SDK控制層調(diào)入內(nèi)存區(qū);接收DC2x0_CloseCamera()指令,同時釋放指定相機SDK控制層所占內(nèi)存區(qū)。指定相機SDK層位于SDK控制層下,本層支持所有訪問相機的函數(shù),并將函數(shù)執(zhí)行結(jié)果狀態(tài)碼(即錯誤代碼)經(jīng)SDK控制層上傳給應(yīng)用程序。指定相機控制層的下層為驅(qū)動程序?qū)印r?qū)動程序用于與外部設(shè)備直接打交道。
2 SDK函數(shù)分類
SDK內(nèi)的函數(shù)按照作用類型一般可以分為以下幾類:
(1)相機初始化函數(shù):主要包括_CloseCamera()和_OpenCamera()。
(2)相機控制函數(shù):主要包括_GetStatus()、_GetConfig()、_SetConfig()、_ControlCameraTime()、_ControlCameraID()、_ControlTakePicture()、_ResetCamera()。
(3)圖片管理函數(shù):_TakePicture()、_ResetCamera()。
(4)圖片信息獲取函數(shù):_GetCameraPictInfo()、_GetAllPictureName()、_GetNativePicture()。
(5)文件傳遞函數(shù):_GetFileFormCamera()、_SetFileToCamera。
(6)其他類型的函數(shù):包括電池電量數(shù)據(jù)獲取函數(shù)、最后一次操作返回碼獲取函數(shù)等。
3 SDK用法的一個典型實例
下面舉一個拍攝圖片的簡單實例使讀者大體了
[1] [2] [3]
【利用數(shù)碼相機SDK開發(fā)圖像采集應(yīng)用程序】相關(guān)文章:
ARM的溫室圖像采集設(shè)計04-27
蜻蜓的綜合開發(fā)利用05-03
日本對溫泉的開發(fā)利用05-03
土地資源的開發(fā)與利用04-29
寡糖及其開發(fā)利用04-30
草原蝗蟲資源的開發(fā)與利用05-02
核桃資源的開發(fā)利用05-02
越西花椒產(chǎn)業(yè)的開發(fā)與利用05-02
語文課程開發(fā)與利用04-30
論江西紅色文化的開發(fā)與利用04-27