注册网站帐号注销,网页视频怎么下载保存,四川建设网报名系统,做字幕模板下载网站有哪些文章目录 1.SDK支持的平台类型1.1 Windows 平台1.2 Linux平台 2.SDK基本知识2.1 SDK目录结构2.2 设备组件简介2.3 设备组件属性2.4 设备的帧数据管理机制2.5 SDK中的坐标系变换 3.Sample_V1示例程序3.1 DeviceStorage3.2 DumpCalibInfo3.3 NetStatistic3.4 SimpleView_SaveLoad… 文章目录 1.SDK支持的平台类型1.1 Windows 平台1.2 Linux平台 2.SDK基本知识2.1 SDK目录结构2.2 设备组件简介2.3 设备组件属性2.4 设备的帧数据管理机制2.5 SDK中的坐标系变换 3.Sample_V1示例程序3.1 DeviceStorage3.2 DumpCalibInfo3.3 NetStatistic3.4 SimpleView_SaveLoadConfig3.5 SimpleView_FetchFrame3.6 SimpleView_Callback3.7 SimpleView_SGBM 参考 1.SDK支持的平台类型
1.1 Windows 平台
Windows SDK 支持 X8632位和 X6464位硬件平台并提供支持 Window7 及以上版本操作系统的驱动文件。
1.2 Linux平台
Linux SDK 支持 AArch64、ARMv7hf、RaspberryPi、i686 和 x86-64 硬件平台并为开发者编译程序提供相应平台的库文件。
2.SDK基本知识
2.1 SDK目录结构
Include:头文件 TYApi.h:设备操作的常规接口 TYCoordinateMapper.h:坐标系变换相关接口 TYImageProc.h:畸变校正/滤波接口 TyIsp.h:RAW RGB数据的软ISP处理代码 Lib : 各类平台下的动态库文件及windows平台下sample程序 sample: SDK中示例代码通过CMake跨平台自动构建项目详细功能参见在线文档https://doc.percipio.xyz/cam/latest/getstarted/compile.html
2.2 设备组件简介
TY_DEVICE_COMPONENT_LIST(TYApi.h) TY_COMPONENT_DEVICE:用于设置相机本身属性例如触发属性网口相机的IP参数等 TY_COMPONENT_DEPTH_CAM:用于设置深度相机属性例如是能深度数据通道设置深度数据分辨率等 TY_COMPONENT_IR_CAM_LEFT :用于设置左IR相机属性 TY_COMPONENT_IR_CAM_RIGHT:用于设置右IR相机属性 TY_COMPONENT_LASER:用于设置激光器属性例如激光器强度设置激光器自动控制使能等 TY_COMPONENT_RGB_CAM:用于设置RGB相机属性例如使能RGB通道数据设置RGB分辨率曝光时间增益等 2.3 设备组件属性
TY_FEATURE_ID_LIST 1.相机的所有组件所有属性 2.并不是相机会支持这里面所有的属性可通过API接口TYHasFeature的返回值判断是否支持。 3.属性的设置/获取可以通过API接口进行操作: TYSetBool/TYSetInt/TYSetFloat/TYSetStruct… TYGetBool/TYGetInt/TYGetFloat/TYGetStruct… 4.部分属性参数存在一个range范围,可通过API接口TYGetIntRange/ TYGetFloatRange读取。 2.4 设备的帧数据管理机制 1.设备初始化的时候设置好使能的通道/分辨率/格式之后可通过API接口TYGetFrameBufferSize获取Frame包大小。 2.可根据获取的Frame包尺寸分配buffer。 3.调用TYEnqueueBuffer将分配的buffer加入到SDK的数据缓冲队列中。 4.调用TYFetchFrame将能从SDK缓冲队列中获取一帧数据。 5.处理完数据之后重新调用TYEnqueueBuffer将buffer重新加入SDK缓冲队列。 设备的帧数据管理机制示意图 2.5 SDK中的坐标系变换
深度图的像素坐标系和空间坐标系(点云) TYMapDepthToPoint3d/ TYMapDepthImageToPoint3d TYMapPoint3dToDepth/TYMapPoint3dToDepthImage 点云空间坐标系变换 TYMapPoint3dToPoint3d 深度图和RGB图像素坐标系变换 TYMapDepthToColorCoordinate/TYMapDepthImageToColorCoordinate TYMapRGBImageToDepthCoordinate 3.Sample_V1示例程序
下面运行exe程序可以通过鼠标右键shift按键打开powershell运行
3.1 DeviceStorage
该示例程序用于操作custom_block.bin和isp_block.bin的存储空间。 使用方法: 1.操作custom_block.bin 存储空间 1)写入文件内容将1.txt文件中的内容写入custom_block.bin。 运行示例程序 .\DeviceStorage.exe -id 207000151696 -b custom -i 1.txt2)读出内存中的文件内容并输出到程序运行目录下。 运行示例程序 .\DeviceStorage.exe -id 207000151696 -b custom -o 2.txt注释207000151696是相机序列号根据实际情况更改
2.操作isp_block.bin存储空间 1)写入文件内容将1.txt文件中的内容写入isp_block.bin 。 运行示例程序 .\DeviceStorage.exe -id 207000151696 -b isp -i 1.txt2)读出内存中的文件内容并输出到程序运行目录下。 运行示例程序 .\DeviceStorage.exe -id 207000151696 -b isp -o 2.txt3.2 DumpCalibInfo
SDK3.6.52之后版本新增示例程序此示例程序可以将相机的标定参数以json文件的形式导出到本地。 使用方法: 1.导出原始的标定参数文件
.\DumpCalibInfo.exe -id 相机序列号 -cs 0 -ds 0 -out_json FM855-E1-G.json-cs 0 表示设置RGB分辨率为列表中的第一个 -ds 0表示设置depth分辨率为列表中的第一个 -out_json指定输出文件的名字及路径 2.导出当前的标定参数文件
.\DumpCalibInfo.exe -id 207000151696 -cs 1 -ds 2 -mode 0 -out_json FM855-E1-G.json-mode 0表示读取当前设置后的标定参数读取到的内参会随分辨率变化其他模式均为原始的标定参数。 3.3 NetStatistic
该示例程序用于测试网络相机图像的丢包率。 示例程序如下
TY_CAMERA_STATISTICS st;
ASSERT_OK( TYGetStruct(hDevice, TY_COMPONENT_DEVICE, TY_STRUCT_CAM_STATISTICS, st, sizeof(st)) );
LOGI(Statistics:);
LOGI( packetReceived: % PRIu64 , st.packetReceived);
LOGI( packetLost : % PRIu64 , st.packetLost);
LOGI( imageOutputed : % PRIu64 , st.imageOutputed);
LOGI( imageDropped : % PRIu64 , st.imageDropped);packetReceived上位机共收到的数据包数量 packetLost上位机共未收到的数据包数量 imageOutputed上位机总的收到的图像数量与数据流个数成整倍数关系 imageDropped上位机总的未收到的图像数量 3.4 SimpleView_SaveLoadConfig
该示例程序给出了保存/导出相机配置参数的demo。 参数配置文件有自己的格式格式错误会校验不通过从而功能失效。 若需正确的参数配置文件请使用PV软件导出一份。 使用方法: 1.将参数配置文件导入相机存储空间 运行示例程序
.\SimpleView_SaveLoadConfig.exe -id 207000151696 -s FM855.json2.将参数配置文件导出到本地程序运行目录下 运行示例程序
.\SimpleView_SaveLoadConfig.exe -id 207000151696 -o fm855.jsonwrite_parameters_to_storage 向DeviceStorage写入包含featrue配置的json数据load_parameters_from_storage 从DeviceStorage读出json并解码出json然后配置到相机 常见错误反馈
1.Error: The configuration file is too large, the maximum size should not exceed 4000 bytes写入存储空间时文件内容大于存储空间的大小
2.Error: The CRC check code is empty加载参数时存储空间没有内容
3.parameters load fail!用write_parameters_to_storage写入的文件内容错误格式不匹配
4.Error: The data in the storage area has a CRC check error.
存储空间的文件内容不是以write_parameters_to_storage接口写入的在调用load_parameters_from_storage时将返回此错误3.5 SimpleView_FetchFrame
该示例程序用于深度相机工作在自由采集模式下连续采集图像并输出图像数据。
3.6 SimpleView_Callback
该示例程序用于深度相机工作在自由采集模式下连续采集图像在独立的数据处理线程防止堵塞图像数据获取中进行 OpenCV 渲染并输出图像数据。 sample/common/TYThread.cpp提供了简单的线程创建接口通过开启线程循环fetch图像以避免主线程的阻塞。 3.7 SimpleView_SGBM
SGM是一种用于计算双目视觉中视差disparity的半全局匹配算法在OpenCV中的实现为semi-global block matchingSGBM。 参考
1.双目立体匹配算法SGBM https://blog.csdn.net/A_L_A_N/article/details/81490043?spm1001.2014.3001.5506 2.双目立体匹配博客资料汇总 https://blog.csdn.net/qq_38233873/article/details/135450586?spm1001.2014.3001.5506