海康工业相机功能模块-参数保存、加载、批量复制参数
生活随笔
收集整理的這篇文章主要介紹了
海康工业相机功能模块-参数保存、加载、批量复制参数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
??倒I相機功能模塊-參數保存與加載
- 前言
- 相機參數保存的快速方法
- 相機參數導入導出的操作方法
- UserSetLoad 加載相機內部參數
- FeatureLoad/FeatureSave
- FileAccess 功能
- MVS導入導出功能
- 幾種方法的優缺點比較
前言
前面一篇文章,講了工業相機參數如何設置與獲取,使用sdk能夠將自己想要的參數快速的配置進自己的程序,但是,在實際使用中,我們會發現,sdk配置的參數似乎在斷電只會就消失啦,不能實現斷電生效???
軟件開發過程中,只能夠配置常見的參數,一些偏門的參數,非常見的相機調試參數,如何批量設置進相機、如果斷電能夠保存???
這一篇文章就是來介紹、解決這個問題
相機參數保存的快速方法
- MVS如何操作
參考相機用戶手冊提供的方法,主要操作分為3步
- sdk接口如何調用-UserSetSave方法
參考在MVS里面的操作,主要是三句話的調用
相機參數導入導出的操作方法
UserSetLoad 加載相機內部參數
上面講了,使用UserSetSave方法,相機支持3套用戶參數保存,那么我們可以將不同的參數保存到不同的UserSetSelector里面,然后使用UserSetLoad 把參數再調出來,實現不同參數組合的切換
代碼實現也很簡單
參數保存,參考上面的偽代碼,參數加載如下:
FeatureLoad/FeatureSave
參考MVS提供的示例程序:C:\Program Files (x86)\MVS\Development\Samples\VC\VS\SimpleSamples\ParametrizeCamera_LoadAndSave
關鍵代碼:
調用MV_CC_FeatureSave接口,可以將相機參數導出到本地,形成一個.ini結尾的文件,打開這個文件可以看見相機的參加參數,例如曝光、增益等
修改這個文件中的你想要修改的參數值,再調用MV_CC_FeatureLoad可以重新導入修改之后的參數
如果是批量應用的話,事先導出一份ini文件,然后使用FeatureLoad的接口,就可以實現批量化的參數設置,減少人員調試
當然,這個功能暫時也有幾個缺點:
- 只能導出部分參數,只能導出Streamable屬性為YES的參數,為NO的參數無法導出,這個屬性取決于相機,相機支持就能導出;目前根據觀察,??荡蟛糠窒鄼C的常見參數,都是YES啦,因此,也無需更多的關心這個問題
- 不同固件版本、不同相機型號,ini文件不能互相導入
- 無法與MVS客戶端互相兼容,MVS不支持ini文件導入
FileAccess 功能
- 方法3:FileAccess 功能
這個功能,是將方法1中的userset參數讀出與重新寫入,不過,導出來的文件是bin文件,不能夠被直接閱讀與修改
示例程序:C:\Program Files (x86)\MVS\Development\Samples\VC\VS\SimpleSamples\ParametrizeCamera_FileAccess
關鍵代碼:
如果想要斷電生效,還需要參考方法1,useset對參數進行保存
缺點:
- bin文件不能被閱讀與修改
- .要求相機型號、固件版本號一致
MVS導入導出功能
方法4:MVS導入導出功能
MVS此功能的實現與FileAccess 功能一致,導出的都是userset參數
版本要求:MVS3.2.1版本及其以上
使用方法很簡單,鏈接相機后,在屬性界面的上方找到導入/導出的圖標按鈕,點擊即可,生成.mfs后綴的文件即可
幾種方法的優缺點比較
| UserSetLoad (推薦使用) | 操作簡單、MVS、sdk都可以操作實現 | 批量機臺復制操作不易 |
| FeatureLoad/FeatureSave | ini文件可讀性高,批量機臺復制簡單、參數修改簡單 | 需代碼開發;MVS不兼容 |
| FileAccess | 批量復制簡單,與MVS兼容 | 文件不可讀,不可被修改; |
| MVS導入導出(推薦使用) | 批量復制簡單,SDK可兼容 | 文件不可讀,不可被修改; |
總結
以上是生活随笔為你收集整理的海康工业相机功能模块-参数保存、加载、批量复制参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: django 分页
- 下一篇: WV.27-大数阶乘算法7-入门篇之二