圖漾相機——Sample_V2示例程序(待補充)

文章目錄

  • 1.SDK支持的平臺類型
    • 1.1 Windows 平臺
    • 1.2 Linux平臺
  • 2.Sample_V2編譯流程
    • 2.1 Windows環境
    • 2.2 Linux環境編譯
  • 3.Sample_V2示例程序測試
    • 3.1 ListDevice_v2
    • 3.2 DepthStream_v2
    • 3.3 ExposureTimeSetting_v2
    • 3.4 ForceDeviceIP_v2
    • 3.5 GetCalibData_v2
    • 3.6 NetStatistic_v2
    • 3.7 OfflineReconnection_v2
    • 3.8 MultiDeviceOfflineReconnection_v2
    • 3.9 OpenWithInterface_v2
    • 3.10 OpenWithIP_v2
    • 3.11 PointCloud_v2
    • 3.12 Registration_v2
    • 3.13 ResolutionSetting_v2
    • 3.14 SaveLoadConfig_v2
    • 3.15 SoftTrigger_v2
    • 3.16 StreamAsync_v2
    • 3.17 ToFDepthStream_v2
    • 3.18 IREnhance_v2

1.SDK支持的平臺類型

1.1 Windows 平臺

Windows SDK 支持 X86(32位)和 X64(64位)硬件平臺,并提供支持 Window7 及以上版本操作系統的驅動文件。

1.2 Linux平臺

Linux SDK 支持 AArch64、ARMv7hf、RaspberryPi、i686 和 x86-64 硬件平臺,并為開發者編譯程序提供相應平臺的庫文件。
在這里插入圖片描述

2.Sample_V2編譯流程

Sample_V2例子是在SDK更新至3.6.66之后增加的,之前版本沒有V2系列的Sample。

2.1 Windows環境

進入官網SDK鏈接,下載對應C++版本SDK
SDK下載鏈接

具體編譯過程,可參看如下鏈接:
C++版本SDK編譯鏈接

2.2 Linux環境編譯

Ubuntu環境下,編譯步驟如下:

cd /build/release
sudo cp lib/linux/lib_x64/libtycam.so* /usr/lib/
cd sample
mkdir build
cd build
cmake ..
make

如果需要只編譯sample_v2,關閉sample_v1,則cmake增加如下參數:

cmake .. -DBUILD_SAMPLES=off

在sample_v2基礎上關閉對opencv依賴,則cmake增加如下:

cmake .. -DBUILD_SAMPLES=off -DBUILD_SAMPLE_V2_WITH_OPENCV=off

3.Sample_V2示例程序測試

3.1 ListDevice_v2

該示例程序用于枚舉連接到上位機上的所有深度相機。

3.2 DepthStream_v2

該示例程序用于獲取圖漾相機的深度圖像。

3.3 ExposureTimeSetting_v2

該示例程序用于展示如何設置相機的彩色曝光時間。

注意: 該程序默認設置RGB曝光時間為-1,無法設置成功,錯-1013(out ofrange),可通過鍵盤輸入的方式,設置合適的值。若不清楚曝光時間范圍,可通過percipioviewer軟件查看屬性范圍。

3.4 ForceDeviceIP_v2

該示例程序用于設置相機的靜態ip、動態ip、臨時ip。

用法:
1.設置靜態ip:斷電后重新上電,相機ip仍為設置值

.\ForceDeviceIP_v2.exe -static 06:2F:FA:07:F8:CB 192.168.6.81 255.255.255.0 192.168.6.1

2.設置動態ip:清除相機的靜態ip

.\ForceDeviceIP_v2.exe -dynamic 06:2F:FA:07:F8:CB

.\ForceDeviceIP_v2.exe -dynamic 06:2F:FA:07:F8:CB 192.168.6.81 255.255.255.0 192.168.6.1

3.設置臨時ip:設置臨時的相機ip,斷電重啟后,相機仍以DHCP/Link-local.的方式申請ip

.\ForceDeviceIP_v2.exe -force 06:2F:FA:07:F8:CB 192.168.6.8 255.255.255.0 192.168.6.1

相機用法可以參考:設置相機IP地址

3.5 GetCalibData_v2

該示例程序用于獲取相機的標定參數。

注意:只能獲取相機原始的標定參數,獲取到的參數不會隨著分辨率切換而發生改變。

3.6 NetStatistic_v2

該示例程序用于測試網絡相機深度圖像的丟包率。
packetReceived:上位機共收到的數據包數量
packetLost:上位機共未收到的數據包數量
imageOutputed:上位機總的收到的圖像數量(與數據流個數成整倍數關系)
imageDropped:上位機總的未收到的圖像數量

3.7 OfflineReconnection_v2

該示例程序展示了圖漾相機發生掉線異常后,上位機重連相機的方法。

3.8 MultiDeviceOfflineReconnection_v2

該示例程序展示了多臺圖漾相機其中一臺或者多臺相機發生掉線異常后,上位機重連某臺相機的方法。

3.9 OpenWithInterface_v2

該示例程序展示了通過指定網卡打開圖漾相機的使用方法。

使用步驟:
1.指定序列號

.\OpenWithInterface_v2.exe -id 207000153360

2.指定網卡
??在執行步驟1后,程序進入交互模式,通過輸入鍵盤上的數字并以回車確認,選擇所需的網卡。
??下圖中表示通過” wifi-c4-bd-e5-9c-ba-0db202a8c0”這個接口打開序列號為207000153360的相機。
在這里插入圖片描述

3.10 OpenWithIP_v2

該示例程序用于通過指定ip打開圖漾網絡相機的使用方法。

使用方法

.\OpenWithIP_v2.exe -ip 192.168.6.87

注意:192.168.6.87是相機IP地址

3.11 PointCloud_v2

該示例程序用于保存圖漾相機采集時候的點云圖/Depth2Color點云。保存格式: ply,單位:m。

使用辦法
?? 在出現提示語“Press 'c' to take a picture and 'q' to exit”后,按“c”保存或按“q”退出,文件保存路徑為程序執行目錄。

3.12 Registration_v2

該示例程序展示了圖漾處理相機深度圖和彩色圖對齊的2種方式:D2C和C2D。

使用方法
1.DepthToColor 深度圖對齊到彩色圖

#define MAP_DEPTH_TO_COLOR  1   (修改代碼第4)

2.ColorToDepth 彩色圖對齊到深度圖

#define MAP_DEPTH_TO_COLOR  0   (修改代碼第4)

3.13 ResolutionSetting_v2

該示例展示了圖漾SDK設置相機分辨率及其格式的方法。

使用方法:
運行程序后根據終端提示,輸入要配置的RGB分辨率對應的數字編號,并按回車確認。

?? 1.下圖RGB分辨率為:YUYV 640x360
在這里插入圖片描述
?? 2.設置Depth分辨率

.\ResolutionSetting_v2.exe -id 207000153024 -width 1280 -height 800,表示設置depth的分辨率為1280x800。

注意:在該示例程序中,若不輸入depth分辨率的寬和高,則不輸出depth圖像。

3.14 SaveLoadConfig_v2

該示例程序展示了將相機參數保存至custom_block.bin(相機內部存儲區)和將相機參數從custom_block.bin導出至本地的方法。

3.15 SoftTrigger_v2

該示例程序展示了如何將相機配置在觸發模式下,并實現采圖的方法。

3.16 StreamAsync_v2

該示例程序展示了如何配置相機數據流異步,并實現采圖的方法。

3.17 ToFDepthStream_v2

該示例程序展示了如何對ToF深度圖像進行畸變校正的方法。

3.18 IREnhance_v2

ToF相機紅外圖像增強示例程序。

LinearStretchProcesser:線性拉伸
func:result=(src-min(src))* 255.0 / (max(src) - min(src))

LinearStretchMultiProcesser:通過擴展比例對圖像的像素值進行線性變換func:result=src*multi_expandratio

LinearStretchStdProcesser:基于標準差的線性拉伸,func:result=src255.0/(std_expandratiostd(src))

NoLinearStretchLog2Processer:基于對數變換的非線性拉伸,
func:result=log_expandratio * log2(src)

NoLinearStretchHistProcesser:基于直方圖的非線性拉伸,
func:result=equalizeHist(src)

目前實測下來標準差效果較好,如下圖
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/79046.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/79046.shtml
英文地址,請注明出處:http://en.pswp.cn/web/79046.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Google-chrome版本升級后sogou輸入法不工作了

背景: 筆記本Thinkpad E450,操作系統Ubuntu 24.04.2 LTS,Chrome瀏覽器版本135.0.7049.114-1,Edge瀏覽器版本131.0.2903.99-1,輸入法Sogou版本4.2.1.145 現象: - **正常場景**:Edge中可通過Ctrl…

7系列 之 OSERDESE2

背景 《ug471_7Series_SelectIO.pdf》介紹了Xilinx 7 系列 SelectIO 的輸入/輸出特性及邏輯資源的相關內容。 第 1 章《SelectIO Resources》介紹了輸出驅動器和輸入接收器的電氣特性,并通過大量實例解析了各類標準接口的實現。 第 2 章《SelectIO Logic Resource…

Ansible 流程控制

條件語句(判斷) 當滿足什么條件時,就執行那些tasks when 當...時ansible獲取主機名 # 主機名中,不包含.沒有區別 ansible_hostname # 包含.只顯示第一個.前面的名字 ansible_fqdn # 包含.顯示完整的主機名不管是shell還是各大編程語言中&#xf…

git命令積累(個人學習)

如何將docx文件不上傳? 創建或編輯 .gitignore 文件 打開 .gitignore 文件,添加以下內容來忽略所有 .docx 文件: *.docx清除已追蹤的 .docx 文件 git rm --cached "*.docx"這將從 Git 倉庫中刪除 .docx 文件,但不會刪…

springboot應用大批量導出excel產生oom處理措施實踐(適用于poieasyexcel)

一、背景: 在某些信息管理場景中,存在大批量導出需求,例如一次性導出10~100w行excel數據,如果不做特殊的處理,很容易導致Out Of Memory,特別是堆內存溢出。 oom復現 例如修改IDEA運行配置,VM…

谷歌在即將舉行的I/O大會之前,意外泄露了其全新設計語言“Material 3 Expressive”的細節

每周跟蹤AI熱點新聞動向和震撼發展 想要探索生成式人工智能的前沿進展嗎?訂閱我們的簡報,深入解析最新的技術突破、實際應用案例和未來的趨勢。與全球數同行一同,從行業內部的深度分析和實用指南中受益。不要錯過這個機會,成為AI領…

深入理解負載均衡:傳輸層與應用層的原理與實戰

目錄 前言1. 傳輸層(Layer 4)負載均衡1.1 工作層級與核心機制1.2 實現方式詳解1.3 優缺點分析1.4 典型實現工具 2. 應用層(Layer 7)負載均衡2.1 工作層級與核心機制2.2 實現方式解析2.3 優缺點分析2.4 常用實現工具 3. Layer 4 與…

PyTorch 版本、torchvision 版本和 Python 版本的對應關系

PyTorch 版本、torchvision 版本和 Python 版本的對應關系 在深度學習領域,PyTorch 及其配套庫 torchvision 的使用極為廣泛。但不同版本的 PyTorch、torchvision 與 Python 之間存在嚴格的對應關系,若版本搭配不當,會導致代碼運行出錯…

【hadoop】Hbase java api 案例

代碼實現: HBaseConnection.java package com.peizheng.bigdata;import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.client.Connection; import org.apache.hadoop.hbase.client…

榮耀A8互動娛樂組件部署實錄(第3部分:控制端結構與房間通信協議)

作者:曾在 WebSocket 超時里泡了七天七夜的苦命人 一、控制端總體架構概述 榮耀A8控制端主要承擔的是“運營支點”功能,也就是開發與運營之間的橋梁。它既不直接參與玩家行為,又控制著玩家的行為邏輯和游戲規則觸發機制。控制端的主要職責包…

Vue3路由模式為history,使用nginx部署上線后刷新404的問題

一、問題 在使用nginx部署vue3的項目后,發現正常時可以訪問的,但是一旦刷新,就是出現404的情況 二、解決方法 1.vite.config.js配置 在vite.config.js中加入以下配置 export default defineConfig(({ mode }) > {const isProduction …

企業級UI測試的“雙保險”:TestComplete的智能對象識別與詳細報告功能

企業級UI測試真是讓人頭疼!界面元素變來變去,測試腳本動不動就報錯,測試工作根本沒法順利推進。而且,測試結果的管理和共享也麻煩得很,團隊協作效率大打折扣。別急!TestComplete的智能對象識別和詳細測試報…

SpringBoot的自動配置和起步依賴原理

關于Spring Boot的自動配置和起步依賴,我想結合最新的實現機制來展開說明。先說自動配置——這是Spring Boot最核心的"約定優于配置"思想的落地體現。舉個例子,當我們創建一個新的Spring Boot項目時,只要在pom.xml里添加了spring-b…

《MATLAB實戰訓練營:從入門到工業級應用》高階挑戰篇-《5G通信速成:MATLAB毫米波信道建模仿真指南》

《MATLAB實戰訓練營:從入門到工業級應用》高階挑戰篇-5G通信速成:MATLAB毫米波信道建模仿真指南 🚀📡 大家好!今天我將帶大家進入5G通信的奇妙世界,我們一起探索5G通信中最激動人心的部分之一——毫米波信…

一、Redis快速入門

Redis的常見命令和客戶端使用 一、初識Redis Redis是一種鍵值型的NoSql數據庫,這里有兩個關鍵字: 鍵值型 NoSql 其中鍵值型,是指Redis中存儲的數據都是以key、value對的形式存儲,而value的形式多種多樣,可以是字符…

gitcode 上傳文件報錯文件太大has exceeded the limited size (10 MiB) in commit

登陸gitcoe,在項目設置->提交設置 ,勾選提交文件限制,修改限制的大小。 修改完后,重新提交代碼。

【運維】構建基于Python的自動化運維平臺:用Flask和Celery打造高效管理工具

《Python OpenCV從菜鳥到高手》帶你進入圖像處理與計算機視覺的大門! 解鎖Python編程的無限可能:《奇妙的Python》帶你漫游代碼世界 隨著企業IT基礎設施的復雜性不斷增加,手動運維已無法滿足高效管理的需求。本文詳細介紹如何基于Python構建一個自動化運維平臺,利用Flask…

基于大模型預測的產鉗助產分娩全方位研究報告

目錄 一、引言 1.1 研究背景與意義 1.2 研究目的與方法 二、產鉗助產分娩概述 2.1 產鉗助產定義與歷史 2.2 適用情況與臨床意義 三、大模型預測原理與數據基礎 3.1 大模型技術原理 3.2 數據收集與處理 3.3 模型訓練與驗證 四、術前預測與準備 4.1 大模型術前風險預…

css使用aspect-ratio制作4:3和9:16和1:1等等比例布局

文章目錄 1. 前言2. 用法2.1 基本語法2.2. 與max-width、max-height等屬性結合使用2.3. 動態計算比例 3. 應用場景4. 兼容性和替代方案5. 總結 1. 前言 在網頁制作過程中,有時候我們只知道寬度,或者只知道高度,這時候需要制作一個4:3和9:16這…

【國產化】在銀河麒麟ARM環境下離線安裝docker

1、前言 采用離線安裝的方式。 關于離線安裝的方式官網有介紹,但是說的很簡單,網址:Binaries | Docker Docs 官網介紹的有幾種主流linux系統的安裝方式,但是沒有kylin的,所以在此記錄一下。 在安裝過程中也遇到了些…