Video Analysis底层库拆分,sdk的go封装
chenshijun
2020-09-09 0541661d3e4a063d4e68b33e4d6dbb71d3b58638
go2c.go
@@ -54,12 +54,23 @@
   PFacialData [8192]uint8
   NFaceID     int64
}
type CThfqParam struct {
   Brightness_min int32 //0-100,太暗阈值,建议25.越小越可能把过暗的人脸当作正常人脸,此参数会影响THFQ_Result::brightness
   Brightness_max int32 //0-100,太亮阈值,建议75.越大越可能把的过亮人脸当作正常人脸,此参数会影响THFQ_Result::brightness
}
type CThfqResult struct {
   Brightness int32 //人脸亮度,只有3种可能的值:[-1->太暗,0->正常,1->太亮],亮度结果会受亮度阈值参数brightness_min和brightness_max影响
   Occlusion  int32 //人脸遮挡度,范围值为0-100,越大表示人脸遮挡程度越高
   Hat        int32 //带帽子,范围为0-100,越大表示越可能有佩戴帽子,建议判别阈值为50
   Blur       int32 //人脸模糊度,范围值为0-100,越大表示图像越模糊,建议人脸模糊度判别阈值为70
   Glasses    int32 //带眼镜,范围为0-100,越大表示越可能有戴眼镜,建议判别阈值为70
}
type CObjInfo struct {
   RcObj CRECT
   Typ   int32
   Prob  float32
}
//track yolo objs info
type CObjTrackInfo struct {
   ObjInfo CObjInfo
@@ -67,6 +78,8 @@
}
type CPlateIDCfg struct {
   FastMemorySize int32 // DSP等的片内内存大小 单位K
   MemorySize     int32 // 普通内存大小 单位 M
   MinPlateWidth  int32 // 检测的最小车牌宽度,以像素为单位
   MaxPlateWidth  int32 // 检测的最大车牌宽度,以像素为单位
   MaxImageWidth  int32 // 最大图像宽度
@@ -100,27 +113,105 @@
}
type CPlateIDResult struct {
   License [16]uint8
   Color   [8]uint8
   License [16]uint8 // 车牌字符串 STRING
   Color   [8]uint8  // 车牌颜色 STRING
   NColor      int32
   NType       int32
   NConfidence int32
   NBright     int32
   NDirection  int32
   NColor      int32 // 车牌颜色
   NType       int32 // 车牌类型
   NConfidence int32 // 整牌可信度
   NBright     int32 // 亮度评价
   NDirection  int32 // 车牌运动方向,0 unknown, 1 left, 2 right, 3 up, 4 down
   RcLocation          CRECT
   PbyBits             [4]uint8
   NTime               int32
   NCarBright          uint8
   NCarColor           uint8
   NCarLogo            uint8
   NCarType            uint8
   PbyPlateBin         [4]uint8
   NBinPlateWidth      [2]uint8
   NBinPlateHeight     [2]uint8
   Reserved            [70]uint8
   RcLogoLocation      CRECT
   NCarModel           [2]uint8
   NCarModelConfidence [2]uint8
   RcLocation          CRECT     // 车牌坐标
   PbyBits             [4]uint8  // 识别结果对应的图片的缓冲区 NO USE
   NTime               int32     // 识别耗时
   NCarBright          uint8     // 车的亮度
   NCarColor           uint8     // 车的颜色
   NCarLogo            uint8     // 车标类型
   NCarType            uint8     // 车辆类型
   PbyPlateBin         [4]uint8  // 车牌二值化结果(按bit存储)NO USE
   NBinPlateWidth      [2]uint8  // 二值化结果中车牌宽度 NO USE
   NBinPlateHeight     [2]uint8  // 二值化结果中车牌高度 NO USE
   Reserved            [70]uint8 // 保留
   RcLogoLocation      CRECT     // 车标坐标
   NCarModel           [2]uint8  // 车辆类型
   NCarModelConfidence [2]uint8  // 车型可信度
}
type CPlateIDCloudCfg struct {
   NImageMode int32 //0:为帧模式 1:为场模式
   NRecMode   int32 //识别模式,0:单张图片识别,1:视频检测+识别,2:视频多帧融合识别(注:1模式比2模式快,但识别率和捕获率比2低)
   NMinPlateWidth int32 //识别最小车牌宽度
   NMaxPlateWidth int32 //识别最大车牌宽度
   NImageWidth  int32 //图片宽度
   NImageHeight int32 //图片高度
   NMinHorAngle int32
   NMaxHorAngle int32 //水平矫正角度范围,支持最大角度为[-30°,30°]
   NMinVerAngle int32
   NMaxVerAngle int32 //垂直矫正角度范围,支持最大角度为[-30°,30°]
   //此些项针对车型识别有用,其余无用
   FExpLeftRightR float32 //车脸左右扩充(车牌的宽度)倍数 参考值为1.6
   FExpTopR       float32 //车脸上部扩充(车牌的高度)倍数 参考值为6.0
   FExpBottomR    float32 //车脸下部扩充(车牌的高度)倍数 参考值为1.5
}
type CPlateIDCloudResult struct {
   License     [20]uint8 //识别结果
   RcLocation  CRECT     //车牌位置
   X           [4]int32
   Y           [4]int32
   NConfidence int32 //车牌置信度
   NType       int32 //车牌类型
   NDirection  int32 //车辆运动方向 0:朝近运动,1:朝远运动,-1:未知
   NCarColor   int32 //车身主颜色
   NCarColor1  int32 //车身次颜色
   NBright     int32 //车辆深浅色
   PResultBits int32 //视频识别模式中抓拍的图片,视频模式识别下有效,需要开辟
   FramNo int32    //视频模式下帧号
   Time   [7]int32 //视频识别模式中抓拍此张图的时间
   //针对车脸识别应用此项,其余无用
   FaceImage    int32 //对应的车脸的图片,需要提前开辟内存,开辟个最大内存就可以,宽高可以都为1000
   FaceWidth    int32 //车脸宽度
   FaceHeight   int32 //车脸高度
   GrayFaceFlag int32 //车脸是否为灰度图
   CharLocation   [20]CRECT //车牌字符的位置(基于大图)
   CharConfidence [20]CRECT //字符识别置信度
   CharNum        int32     //车牌字符数目
}
type CVehicleITSResult struct {
   NPlateFlag      int32     //是否识别到车牌
   NColor          int32     //车辆颜色
   NType           int32     //车辆类型
   License         [20]uint8 //车牌号码
   NConfidence     int32     // 车牌可信度
   NCharNum        int32     // 未知
   NCharConfidence [20]int32 // 未知
   RcLocation    CRECT //车牌位置
   RcCarLocation CRECT //车辆位置
   VehicleType  [1024]uint8 //车辆类型 --总名称  jeep-大切诺基-2004
   VehicleBrand [1024]uint8 //车辆品牌 --jeep
   VehicleSub   [1024]uint8 //车辆子型号 --大切诺基
   VehicleType1 [1024]uint8 //车辆类型   轿车 货车  客车  面包车
   FVDConf    float32 //车辆检测置信度
   FConfdence float32 //车辆类型置信度
   NVehicleSubModel int32 //车型名称索引
   NVehicleBright   int32 //车辆深浅色
   NVehicleColor1   int32 //车身主颜色
   NVehicleColor2   int32 //车身辅颜色
   PCaptureImage [4]uint8 //视频模式识别下抓拍的图片数据
   NImageWidth   int32    //视频模式下抓拍图像宽度
   NImageHeight  int32    //视频模式下抓拍图像高度
}