前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OpenCV4.X - DNN模块 Python APIs

OpenCV4.X - DNN模块 Python APIs

作者头像
AIHGF
发布2019-04-01 14:47:12
3.4K0
发布2019-04-01 14:47:12
举报
文章被收录于专栏:AIUAIAIUAI

原文: OpenCV4.X - DNN模块 Python APIs - AIUAI

OpenCV 4.X 版本集成了很多直接利用 DNN 模块的 Python API 接口.

安装:

使用:

1. dnn.blobFromImage

定义:

作用:

根据输入图像,创建 NCHW 次序的 4-dim blobs.

参数:

[1] - image: cv2.imread 读取的图片数据;

[2] - scalefactor: 缩放像素值,如 [0, 255] - [0, 1].

[3] - size: 输出图像的尺寸,如 (netInWidth, netInHeight).

[4] - mean: 从各通道减均值. 如果输入 image 为 BGR 次序,且swapRB=True,则通道次序为 (mean-R, mean-G, mean-B).

[5] - swapRB: 交换 3 通道图片的第一个和最后一个通道,如 BGR - RGB.

[6] - crop: 图像尺寸 resize 后是否裁剪. 如果crop=True,则,输入图片的尺寸调整resize后,一个边对应与 size 的一个维度,而另一个边的值大于等于 size 的另一个维度;然后从 resize 后的图片中心进行 crop. 如果crop=False,则无需 crop,只需保持图片的长宽比.

[7] - ddepth: 输出 blob 的 Depth. 可选: CV_32F 或 CV_8U.

示例:

image
image

2. dnn.blobFromImages

定义:

作用:

批量处理图片,创建 4-dim blobs. 其它参数类似于 dnn.blobFromImage.

3. dnn.Net_readFromModelOptimizer

定义:

作用:

从 Intel’s Model Optimizer intermediate representation 创建网络.

参数:

[1] - xml: XML 网络拓扑结果的配置文件.

[2] - bin: 训练权重值的二值文件.

4. dnn.NMSBoxes

定义:

作用:

根据给定的 boxes 和对应的 scores 进行 NMS 处理.

参数:

[1] - boxes: 待处理的边界框 bounding boxes.

[2] - scores: 对于于待处理边界框的 scores.

[3] - score_threshold: 用于过滤 boxes 的 score 阈值.

[4] - nms_threshold: NMS 用到的阈值.

[5] - indices: NMS 处理后所保留的边界框的索引值.

[6] - eta: 自适应阈值公式中的相关系数:nms_thresholdi+1=eta⋅nms_thresholdinms\_threshold_{i+1} = eta \cdot nms\_threshold_inms_thresholdi+1​=eta⋅nms_thresholdi​

[7] - top_k: 如果 top_k>0,则保留最多 top_k 个边界框索引值.

5. dnn.NMSBoxesRotated

定义:

6. dnn.readNet

定义:

作用:

从支持的格式中加载深度学习网络和模型参数.

参数:

[1] - model: 训练的权重参数的模型二值文件,支持的格式有:*.caffemodel(Caffe)、*.pb(TensorFlow)、*.t7*.net(Torch)、 *.weights(Darknet)、*.bin(DLDT).

[2] - config: 包含网络配置的文本文件,支持的格式有:*.prototxt (Caffe)、*.pbtxt (TensorFlow)、*.cfg (Darknet)、*.xml (DLDT).

[3] - framework: 所支持格式的框架名.

该函数自动检测训练模型所采用的深度框架,然后调用 readNetFromCaffereadNetFromTensorflowreadNetFromTorchreadNetFromDarknet 中的某个函数.

7. dnn.readNetFromCaffe

定义:

作用:

加载采用 Caffe 的配置网络和训练的权重参数.

7. dnn.readNetFromDarknet

定义:

作用:

加载采用 Darknet 的配置网络和训练的权重参数.

8. dnn.readNetFromModelOptimizer

定义:

作用:

加载采用Intel’s Model Optimizer intermediate representation 的配置网络和训练的权重参数.

9. dnn.readNetFromONNX

定义:

作用:

加载 .onnx 模型网络配置参数和权重参数.

10. dnn.readNetFromTensorflow

定义:

作用:

加载采用 Tensorflow 的配置网络和训练的权重参数.

[1] - model: .pb 文件.

[2] - config: .pbtxt 文件.

11. dnn.readNetFromTorch

定义:

作用:

加载采用 Torch 的配置网络和训练的权重参数.

[1] - model: 采用 torch.save()函数保存的文件.

所支持的 Torch nn.Module 网络层有:

12. dnn.readTensorFromONNX

定义:

作用:

.pb 文件创建 blob.

[1] - path: 包含 input tensor 的.pb 文件.

13. dnn.resetMyriadDevice

定义:

14. dnn.shrinkCaffeModel

定义:

作用:

将 Caffe 网络的所有权重转换为半精度浮点数值(half precision floating point).

参数:

[1] - src: Caffe 网路的原始单精度浮点数值权重模型文件(后缀一般为.caffemodel).

[2] - dst: 转换后的权重文件.

[3] - layersTypes: 待转换参数的网络层类型,默认是只转换卷积层和全连接层的权重参数.

15. dnn.writeTextGraph

定义:

作用:

将以 protocol buffer 格式的二值网络,创建为文本表示(Create a text representation for a binary network stored in protocol buffer format.)

参数:

[1] - model: 二值网络(binary network)的路径.

[2] - output: 创建的输出文件路径.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年03月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. dnn.blobFromImage
  • 2. dnn.blobFromImages
  • 3. dnn.Net_readFromModelOptimizer
  • 4. dnn.NMSBoxes
  • 5. dnn.NMSBoxesRotated
  • 6. dnn.readNet
  • 7. dnn.readNetFromCaffe
  • 7. dnn.readNetFromDarknet
  • 8. dnn.readNetFromModelOptimizer
  • 9. dnn.readNetFromONNX
  • 10. dnn.readNetFromTensorflow
  • 11. dnn.readNetFromTorch
  • 12. dnn.readTensorFromONNX
  • 13. dnn.resetMyriadDevice
  • 14. dnn.shrinkCaffeModel
  • 15. dnn.writeTextGraph
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档