类 Dnn
- java.lang.Object
-
- org.opencv.dnn.Dnn
-
public class Dnn extends java.lang.Object
-
-
字段摘要
字段 修饰符和类型 字段 描述 static int
DNN_BACKEND_CANN
static int
DNN_BACKEND_CUDA
static int
DNN_BACKEND_DEFAULT
static int
DNN_BACKEND_HALIDE
static int
DNN_BACKEND_INFERENCE_ENGINE
static int
DNN_BACKEND_OPENCV
static int
DNN_BACKEND_TIMVX
static int
DNN_BACKEND_VKCOM
static int
DNN_BACKEND_WEBNN
static int
DNN_LAYOUT_NCDHW
static int
DNN_LAYOUT_NCHW
static int
DNN_LAYOUT_ND
static int
DNN_LAYOUT_NDHWC
static int
DNN_LAYOUT_NHWC
static int
DNN_LAYOUT_PLANAR
static int
DNN_LAYOUT_UNKNOWN
static int
DNN_PMODE_CROP_CENTER
static int
DNN_PMODE_LETTERBOX
static int
DNN_PMODE_NULL
static int
DNN_TARGET_CPU
static int
DNN_TARGET_CPU_FP16
static int
DNN_TARGET_CUDA
static int
DNN_TARGET_CUDA_FP16
static int
DNN_TARGET_FPGA
static int
DNN_TARGET_HDDL
static int
DNN_TARGET_MYRIAD
static int
DNN_TARGET_NPU
static int
DNN_TARGET_OPENCL
static int
DNN_TARGET_OPENCL_FP16
static int
DNN_TARGET_VULKAN
static int
SoftNMSMethod_SOFTNMS_GAUSSIAN
static int
SoftNMSMethod_SOFTNMS_LINEAR
-
构造函数摘要
构造函数 构造函数 描述 Dnn()
-
方法摘要
所有方法 静态方法 具体方法 已弃用方法 修饰符和类型 方法 描述 static Mat
blobFromImage(Mat image)
从图像创建四维 blob。static Mat
blobFromImage(Mat image, double scalefactor)
从图像创建四维 blob。static Mat
blobFromImage(Mat image, double scalefactor, Size size)
从图像创建四维 blob。static Mat
blobFromImage(Mat image, double scalefactor, Size size, Scalar mean)
从图像创建四维 blob。static Mat
blobFromImage(Mat image, double scalefactor, Size size, Scalar mean, boolean swapRB)
从图像创建四维 blob。static Mat
blobFromImage(Mat image, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop)
从图像创建四维 blob。static Mat
blobFromImage(Mat image, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop, int ddepth)
从图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images)
从一系列图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images, double scalefactor)
从一系列图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images, double scalefactor, Size size)
从一系列图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean)
从一系列图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean, boolean swapRB)
从一系列图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop)
从一系列图像创建四维 blob。static Mat
blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop, int ddepth)
从一系列图像创建四维 blob。static Mat
blobFromImagesWithParams(java.util.List<Mat> images)
使用给定参数从一系列图像创建四维 blob。static void
blobFromImagesWithParams(java.util.List<Mat> images, Mat blob)
static void
blobFromImagesWithParams(java.util.List<Mat> images, Mat blob, Image2BlobParams param)
static Mat
blobFromImagesWithParams(java.util.List<Mat> images, Image2BlobParams param)
使用给定参数从一系列图像创建四维 blob。static Mat
blobFromImageWithParams(Mat image)
使用给定参数从图像创建四维 blob。static void
blobFromImageWithParams(Mat image, Mat blob)
static void
blobFromImageWithParams(Mat image, Mat blob, Image2BlobParams param)
static Mat
blobFromImageWithParams(Mat image, Image2BlobParams param)
使用给定参数从图像创建四维 blob。static java.util.List<java.lang.Integer>
getAvailableTargets(int be)
static java.lang.String
getInferenceEngineBackendType()
已弃用。static java.lang.String
getInferenceEngineCPUType()
返回推理引擎 CPU 类型。static java.lang.String
getInferenceEngineVPUType()
返回推理引擎 VPU 类型。static void
imagesFromBlob(Mat blob_, java.util.List<Mat> images_)
解析一个 4D blob 并通过更简单的的数据结构 (std::vector<cv::Mat>) 输出它包含的图像作为二维数组。static void
NMSBoxes(MatOfRect2d bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices)
根据边界框和对应的得分执行非极大值抑制。static void
NMSBoxes(MatOfRect2d bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta)
根据边界框和对应的得分执行非极大值抑制。static void
NMSBoxes(MatOfRect2d bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta, int top_k)
根据边界框和对应的得分执行非极大值抑制。static void
NMSBoxesBatched(MatOfRect2d bboxes, MatOfFloat scores, MatOfInt class_ids, float score_threshold, float nms_threshold, MatOfInt indices)
对给定的边界框和不同类别对应的得分执行批处理非极大值抑制。static void
NMSBoxesBatched(MatOfRect2d bboxes, MatOfFloat scores, MatOfInt class_ids, float score_threshold, float nms_threshold, MatOfInt indices, float eta)
对给定的边界框和不同类别对应的得分执行批处理非极大值抑制。static void
NMSBoxesBatched(MatOfRect2d bboxes, MatOfFloat scores, MatOfInt class_ids, float score_threshold, float nms_threshold, MatOfInt indices, float eta, int top_k)
对给定的边界框和不同类别对应的得分执行批处理非极大值抑制。static void
NMSBoxesRotated(MatOfRotatedRect bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices)
static void
NMSBoxesRotated(MatOfRotatedRect bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta)
static void
NMSBoxesRotated(MatOfRotatedRect bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta, int top_k)
static Net
readNet(java.lang.String model)
读取以支持的格式之一表示的深度学习网络。static Net
readNet(java.lang.String model, java.lang.String config)
读取以支持的格式之一表示的深度学习网络。static Net
readNet(java.lang.String model, java.lang.String config, java.lang.String framework)
读取以支持的格式之一表示的深度学习网络。static Net
readNet(java.lang.String framework, MatOfByte bufferModel)
读取以支持的格式之一表示的深度学习网络。static Net
readNet(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig)
读取以支持的格式之一表示的深度学习网络。static Net
readNetFromCaffe(java.lang.String prototxt)
读取存储在Caffe框架格式中的网络模型。static Net
readNetFromCaffe(java.lang.String prototxt, java.lang.String caffeModel)
读取存储在Caffe框架格式中的网络模型。static Net
readNetFromCaffe(MatOfByte bufferProto)
读取内存中存储的Caffe模型网络模型。static Net
readNetFromCaffe(MatOfByte bufferProto, MatOfByte bufferModel)
读取内存中存储的Caffe模型网络模型。static Net
readNetFromDarknet(java.lang.String cfgFile)
读取存储在Darknet模型文件中的网络模型。static Net
readNetFromDarknet(java.lang.String cfgFile, java.lang.String darknetModel)
读取存储在Darknet模型文件中的网络模型。static Net
readNetFromDarknet(MatOfByte bufferCfg)
读取存储在Darknet模型文件中的网络模型。static Net
readNetFromDarknet(MatOfByte bufferCfg, MatOfByte bufferModel)
读取存储在Darknet模型文件中的网络模型。static Net
readNetFromModelOptimizer(java.lang.String xml)
从Intel的模型优化器中间表示中加载网络。static Net
readNetFromModelOptimizer(java.lang.String xml, java.lang.String bin)
从Intel的模型优化器中间表示中加载网络。static Net
readNetFromModelOptimizer(MatOfByte bufferModelConfig, MatOfByte bufferWeights)
从Intel的模型优化器中间表示中加载网络。static Net
readNetFromONNX(java.lang.String onnxFile)
读取ONNX网络模型。static Net
readNetFromONNX(MatOfByte buffer)
从内存中的ONNX缓冲区读取网络模型。static Net
readNetFromTensorflow(java.lang.String model)
读取存储在TensorFlow框架格式中的网络模型。static Net
readNetFromTensorflow(java.lang.String model, java.lang.String config)
读取存储在TensorFlow框架格式中的网络模型。static Net
readNetFromTensorflow(MatOfByte bufferModel)
读取存储在TensorFlow框架格式中的网络模型。static Net
readNetFromTensorflow(MatOfByte bufferModel, MatOfByte bufferConfig)
读取存储在TensorFlow框架格式中的网络模型。static Net
readNetFromTFLite(java.lang.String model)
读取存储在TFLite框架格式中的网络模型。static Net
readNetFromTFLite(MatOfByte bufferModel)
读取存储在TFLite框架格式中的网络模型。static Net
readNetFromTorch(java.lang.String model)
读取存储在Torch7框架格式中的网络模型。static Net
readNetFromTorch(java.lang.String model, boolean isBinary)
读取存储在Torch7框架格式中的网络模型。static Net
readNetFromTorch(java.lang.String model, boolean isBinary, boolean evaluate)
读取存储在Torch7框架格式中的网络模型。static Mat
readTensorFromONNX(java.lang.String path)
从 .pb 文件创建 Blob。static Mat
readTorchBlob(java.lang.String filename)
加载序列化为 Torch7 框架的 torch.Tensor 对象的 Blob。static Mat
readTorchBlob(java.lang.String filename, boolean isBinary)
加载序列化为 Torch7 框架的 torch.Tensor 对象的 Blob。static void
releaseHDDLPlugin()
释放 HDDL 插件。static void
resetMyriadDevice()
释放 Myriad 设备(由 OpenCV 绑定)。static java.lang.String
setInferenceEngineBackendType(java.lang.String newBackendType)
已弃用。static void
shrinkCaffeModel(java.lang.String src, java.lang.String dst)
将 Caffe 网络的所有权重转换为半精度浮点数。static void
shrinkCaffeModel(java.lang.String src, java.lang.String dst, java.util.List<java.lang.String> layersTypes)
将 Caffe 网络的所有权重转换为半精度浮点数。static void
softNMSBoxes(MatOfRect bboxes, MatOfFloat scores, MatOfFloat updated_scores, float score_threshold, float nms_threshold, MatOfInt indices)
对给定的边界框和对应的分数执行 Soft NMS(非极大值抑制)。static void
softNMSBoxes(MatOfRect bboxes, MatOfFloat scores, MatOfFloat updated_scores, float score_threshold, float nms_threshold, MatOfInt indices, long top_k)
对给定的边界框和对应的分数执行 Soft NMS(非极大值抑制)。static void
softNMSBoxes(MatOfRect bboxes, MatOfFloat scores, MatOfFloat updated_scores, float score_threshold, float nms_threshold, MatOfInt indices, long top_k, float sigma)
对给定的边界框和对应的分数执行 Soft NMS(非极大值抑制)。static void
writeTextGraph(java.lang.String model, java.lang.String output)
为以 Protocol Buffer 格式存储的二进制网络创建文本表示。
-
-
-
字段详情
-
DNN_BACKEND_DEFAULT
public static final int DNN_BACKEND_DEFAULT
- 另请参见
- 常量字段值
-
DNN_BACKEND_HALIDE
public static final int DNN_BACKEND_HALIDE
- 另请参见
- 常量字段值
-
DNN_BACKEND_INFERENCE_ENGINE
public static final int DNN_BACKEND_INFERENCE_ENGINE
- 另请参见
- 常量字段值
-
DNN_BACKEND_OPENCV
public static final int DNN_BACKEND_OPENCV
- 另请参见
- 常量字段值
-
DNN_BACKEND_VKCOM
public static final int DNN_BACKEND_VKCOM
- 另请参见
- 常量字段值
-
DNN_BACKEND_CUDA
public static final int DNN_BACKEND_CUDA
- 另请参见
- 常量字段值
-
DNN_BACKEND_WEBNN
public static final int DNN_BACKEND_WEBNN
- 另请参见
- 常量字段值
-
DNN_BACKEND_TIMVX
public static final int DNN_BACKEND_TIMVX
- 另请参见
- 常量字段值
-
DNN_BACKEND_CANN
public static final int DNN_BACKEND_CANN
- 另请参见
- 常量字段值
-
DNN_LAYOUT_UNKNOWN
public static final int DNN_LAYOUT_UNKNOWN
- 另请参见
- 常量字段值
-
DNN_LAYOUT_ND
public static final int DNN_LAYOUT_ND
- 另请参见
- 常量字段值
-
DNN_LAYOUT_NCHW
public static final int DNN_LAYOUT_NCHW
- 另请参见
- 常量字段值
-
DNN_LAYOUT_NCDHW
public static final int DNN_LAYOUT_NCDHW
- 另请参见
- 常量字段值
-
DNN_LAYOUT_NHWC
public static final int DNN_LAYOUT_NHWC
- 另请参见
- 常量字段值
-
DNN_LAYOUT_NDHWC
public static final int DNN_LAYOUT_NDHWC
- 另请参见
- 常量字段值
-
DNN_LAYOUT_PLANAR
public static final int DNN_LAYOUT_PLANAR
- 另请参见
- 常量字段值
-
DNN_PMODE_NULL
public static final int DNN_PMODE_NULL
- 另请参见
- 常量字段值
-
DNN_PMODE_CROP_CENTER
public static final int DNN_PMODE_CROP_CENTER
- 另请参见
- 常量字段值
-
DNN_PMODE_LETTERBOX
public static final int DNN_PMODE_LETTERBOX
- 另请参见
- 常量字段值
-
SoftNMSMethod_SOFTNMS_LINEAR
public static final int SoftNMSMethod_SOFTNMS_LINEAR
- 另请参见
- 常量字段值
-
SoftNMSMethod_SOFTNMS_GAUSSIAN
public static final int SoftNMSMethod_SOFTNMS_GAUSSIAN
- 另请参见
- 常量字段值
-
DNN_TARGET_CPU
public static final int DNN_TARGET_CPU
- 另请参见
- 常量字段值
-
DNN_TARGET_OPENCL
public static final int DNN_TARGET_OPENCL
- 另请参见
- 常量字段值
-
DNN_TARGET_OPENCL_FP16
public static final int DNN_TARGET_OPENCL_FP16
- 另请参见
- 常量字段值
-
DNN_TARGET_MYRIAD
public static final int DNN_TARGET_MYRIAD
- 另请参见
- 常量字段值
-
DNN_TARGET_VULKAN
public static final int DNN_TARGET_VULKAN
- 另请参见
- 常量字段值
-
DNN_TARGET_FPGA
public static final int DNN_TARGET_FPGA
- 另请参见
- 常量字段值
-
DNN_TARGET_CUDA
public static final int DNN_TARGET_CUDA
- 另请参见
- 常量字段值
-
DNN_TARGET_CUDA_FP16
public static final int DNN_TARGET_CUDA_FP16
- 另请参见
- 常量字段值
-
DNN_TARGET_HDDL
public static final int DNN_TARGET_HDDL
- 另请参见
- 常量字段值
-
DNN_TARGET_NPU
public static final int DNN_TARGET_NPU
- 另请参见
- 常量字段值
-
DNN_TARGET_CPU_FP16
public static final int DNN_TARGET_CPU_FP16
- 另请参见
- 常量字段值
-
-
方法详情
-
getAvailableTargets
public static java.util.List<java.lang.Integer> getAvailableTargets(int be)
-
readNetFromDarknet
public static Net readNetFromDarknet(java.lang.String cfgFile, java.lang.String darknetModel)
读取存储在Darknet模型文件中的网络模型。- 参数
cfgFile
- 包含网络架构文本描述的 .cfg 文件路径。darknetModel
- 包含已学习网络的 .weights 文件路径。- 返回
- 准备好进行前向传播的网络对象,在失败的情况下抛出异常。
-
readNetFromDarknet
public static Net readNetFromDarknet(java.lang.String cfgFile)
读取存储在Darknet模型文件中的网络模型。- 参数
cfgFile
- 包含网络架构文本描述的 .cfg 文件路径。- 返回
- 准备好进行前向传播的网络对象,在失败的情况下抛出异常。
-
readNetFromDarknet
public static Net readNetFromDarknet(MatOfByte bufferCfg, MatOfByte bufferModel)
读取存储在Darknet模型文件中的网络模型。- 参数
bufferCfg
- 包含网络架构文本描述的 .cfg 文件内容的缓冲区。bufferModel
- 包含已学习网络的 .weights 文件内容的缓冲区。- 返回
- Net 对象。
-
readNetFromDarknet
public static Net readNetFromDarknet(MatOfByte bufferCfg)
读取存储在Darknet模型文件中的网络模型。- 参数
bufferCfg
- 包含网络架构文本描述的 .cfg 文件内容的缓冲区。- 返回
- Net 对象。
-
readNetFromCaffe
public static Net readNetFromCaffe(java.lang.String prototxt, java.lang.String caffeModel)
读取存储在Caffe框架格式中的网络模型。- 参数
prototxt
- 包含网络架构文本描述的 .prototxt 文件路径。caffeModel
- 包含已学习网络的 .caffemodel 文件路径。- 返回
- Net 对象。
-
readNetFromCaffe
public static Net readNetFromCaffe(java.lang.String prototxt)
读取存储在Caffe框架格式中的网络模型。- 参数
prototxt
- 包含网络架构文本描述的 .prototxt 文件路径。- 返回
- Net 对象。
-
readNetFromCaffe
public static Net readNetFromCaffe(MatOfByte bufferProto, MatOfByte bufferModel)
读取内存中存储的Caffe模型网络模型。- 参数
bufferProto
- 包含 .prototxt 文件内容的缓冲区bufferModel
- 包含 .caffemodel 文件内容的缓冲区- 返回
- Net 对象。
-
readNetFromCaffe
public static Net readNetFromCaffe(MatOfByte bufferProto)
读取内存中存储的Caffe模型网络模型。- 参数
bufferProto
- 包含 .prototxt 文件内容的缓冲区- 返回
- Net 对象。
-
readNetFromTensorflow
public static Net readNetFromTensorflow(java.lang.String model, java.lang.String config)
读取存储在TensorFlow框架格式中的网络模型。- 参数
model
- 包含网络架构二进制 protobuf 描述的 .pb 文件路径config
- 包含 protobuf 格式文本图形定义的 .pbtxt 文件路径。生成的 Net 对象由使用二进制权重的文本图形构建,这使我们能够使其更灵活。- 返回
- Net 对象。
-
readNetFromTensorflow
public static Net readNetFromTensorflow(java.lang.String model)
读取存储在TensorFlow框架格式中的网络模型。- 参数
model
- 包含网络架构二进制 protobuf 描述的 .pb 文件路径。生成的 Net 对象由使用二进制权重的文本图形构建,这使我们能够使其更灵活。- 返回
- Net 对象。
-
readNetFromTensorflow
public static Net readNetFromTensorflow(MatOfByte bufferModel, MatOfByte bufferConfig)
读取存储在TensorFlow框架格式中的网络模型。- 参数
bufferModel
- 包含 pb 文件内容的缓冲区bufferConfig
- 包含 pbtxt 文件内容的缓冲区- 返回
- Net 对象。
-
readNetFromTensorflow
public static Net readNetFromTensorflow(MatOfByte bufferModel)
读取存储在TensorFlow框架格式中的网络模型。- 参数
bufferModel
- 包含 pb 文件内容的缓冲区- 返回
- Net 对象。
-
readNetFromTFLite
public static Net readNetFromTFLite(java.lang.String model)
读取存储在TFLite框架格式中的网络模型。- 参数
model
- 包含网络架构二进制 flatbuffers 描述的 .tflite 文件路径- 返回
- Net 对象。
-
readNetFromTFLite
public static Net readNetFromTFLite(MatOfByte bufferModel)
读取存储在TFLite框架格式中的网络模型。- 参数
bufferModel
- 包含 tflite 文件内容的缓冲区- 返回
- Net 对象。
-
readNetFromTorch
public static Net readNetFromTorch(java.lang.String model, boolean isBinary, boolean evaluate)
读取存储在Torch7框架格式中的网络模型。- 参数
model
- 使用 torch.save() 函数从 Torch 导出的文件路径。isBinary
- 指定网络是使用 ascii 模式还是二进制模式序列化的。evaluate
- 指定网络的测试阶段。如果为 true,则类似于 Torch 中的 evaluate() 方法。- 返回
- Net 对象。**注意:**Torch 序列化程序的 ascii 模式更可取,因为二进制模式广泛使用 C 语言的 `long` 类型,该类型在不同的系统上具有不同的位长度。加载的文件必须包含序列化的 nn.Module 对象以及导入的网络。尝试从序列化数据中消除自定义对象,以避免导入错误。支持的层列表(即从 Torch nn.Module 类派生的对象实例):- nn.Sequential - nn.Parallel - nn.Concat - nn.Linear - nn.SpatialConvolution - nn.SpatialMaxPooling, nn.SpatialAveragePooling - nn.ReLU, nn.TanH, nn.Sigmoid - nn.Reshape - nn.SoftMax, nn.LogSoftMax 一些来自 cunn、cudnn 和 fbcunn 的这些类的等效项也可能成功导入。
-
readNetFromTorch
public static Net readNetFromTorch(java.lang.String model, boolean isBinary)
读取存储在Torch7框架格式中的网络模型。- 参数
model
- 使用 torch.save() 函数从 Torch 导出的文件路径。isBinary
- 指定网络是使用 ascii 模式还是二进制模式序列化的。- 返回
- Net 对象。**注意:**Torch 序列化程序的 ascii 模式更可取,因为二进制模式广泛使用 C 语言的 `long` 类型,该类型在不同的系统上具有不同的位长度。加载的文件必须包含序列化的 nn.Module 对象以及导入的网络。尝试从序列化数据中消除自定义对象,以避免导入错误。支持的层列表(即从 Torch nn.Module 类派生的对象实例):- nn.Sequential - nn.Parallel - nn.Concat - nn.Linear - nn.SpatialConvolution - nn.SpatialMaxPooling, nn.SpatialAveragePooling - nn.ReLU, nn.TanH, nn.Sigmoid - nn.Reshape - nn.SoftMax, nn.LogSoftMax 一些来自 cunn、cudnn 和 fbcunn 的这些类的等效项也可能成功导入。
-
readNetFromTorch
public static Net readNetFromTorch(java.lang.String model)
读取存储在Torch7框架格式中的网络模型。- 参数
model
- 使用 torch.save() 函数从 Torch 导出的文件路径。- 返回
- Net 对象。**注意:**Torch 序列化程序的 ascii 模式更可取,因为二进制模式广泛使用 C 语言的 `long` 类型,该类型在不同的系统上具有不同的位长度。加载的文件必须包含序列化的 nn.Module 对象以及导入的网络。尝试从序列化数据中消除自定义对象,以避免导入错误。支持的层列表(即从 Torch nn.Module 类派生的对象实例):- nn.Sequential - nn.Parallel - nn.Concat - nn.Linear - nn.SpatialConvolution - nn.SpatialMaxPooling, nn.SpatialAveragePooling - nn.ReLU, nn.TanH, nn.Sigmoid - nn.Reshape - nn.SoftMax, nn.LogSoftMax 一些来自 cunn、cudnn 和 fbcunn 的这些类的等效项也可能成功导入。
-
readNet
public static Net readNet(java.lang.String model, java.lang.String config, java.lang.String framework)
读取以支持的格式之一表示的深度学习网络。- 参数
model
- 包含训练权重的二进制文件。以下是来自不同框架的模型的预期文件扩展名:**.caffemodel
(Caffe, http://caffe.berkeleyvision.org/) **.pb
(TensorFlow, https://tensorflowcn.cn/) **.t7
|*.net
(Torch, https://torch.org.cn/) **.weights
(Darknet, https://pjreddie.com/darknet/) **.bin
|*.onnx
(OpenVINO, https://software.intel.com/openvino-toolkit) **.onnx
(ONNX, https://onnx.org.cn/)config
- 包含网络配置的文本文件。它可以是具有以下扩展名的文件:**.prototxt
(Caffe, http://caffe.berkeleyvision.org/) **.pbtxt
(TensorFlow, https://tensorflowcn.cn/) **.cfg
(Darknet, https://pjreddie.com/darknet/) **.xml
(OpenVINO, https://software.intel.com/openvino-toolkit)framework
- 用于确定格式的显式框架名称标签。- 返回
- Net 对象。此函数会自动检测训练模型的原始框架并调用相应的函数,例如 REF: readNetFromCaffe、REF: readNetFromTensorflow、REF: readNetFromTorch 或 REF: readNetFromDarknet。
model
和config
参数的顺序无关紧要。
-
readNet
public static Net readNet(java.lang.String model, java.lang.String config)
读取以支持的格式之一表示的深度学习网络。- 参数
model
- 包含训练权重的二进制文件。以下是来自不同框架的模型的预期文件扩展名:**.caffemodel
(Caffe, http://caffe.berkeleyvision.org/) **.pb
(TensorFlow, https://tensorflowcn.cn/) **.t7
|*.net
(Torch, https://torch.org.cn/) **.weights
(Darknet, https://pjreddie.com/darknet/) **.bin
|*.onnx
(OpenVINO, https://software.intel.com/openvino-toolkit) **.onnx
(ONNX, https://onnx.org.cn/)config
- 包含网络配置的文本文件。它可以是具有以下扩展名的文件:**.prototxt
(Caffe, http://caffe.berkeleyvision.org/) **.pbtxt
(TensorFlow, https://tensorflowcn.cn/) **.cfg
(Darknet, https://pjreddie.com/darknet/) **.xml
(OpenVINO, https://software.intel.com/openvino-toolkit)- 返回
- Net 对象。此函数会自动检测训练模型的原始框架并调用相应的函数,例如 REF: readNetFromCaffe、REF: readNetFromTensorflow、REF: readNetFromTorch 或 REF: readNetFromDarknet。
model
和config
参数的顺序无关紧要。
-
readNet
public static Net readNet(java.lang.String model)
读取以支持的格式之一表示的深度学习网络。- 参数
model
- 包含已训练权重的二进制文件。不同框架的模型预期具有以下文件扩展名:**.caffemodel
(Caffe, http://caffe.berkeleyvision.org/) **.pb
(TensorFlow, https://tensorflowcn.cn/) **.t7
|*.net
(Torch, https://torch.org.cn/) **.weights
(Darknet, https://pjreddie.com/darknet/) **.bin
|*.onnx
(OpenVINO, https://software.intel.com/openvino-toolkit) **.onnx
(ONNX, https://onnx.org.cn/) 具有以下扩展名的文件:**.prototxt
(Caffe, http://caffe.berkeleyvision.org/) **.pbtxt
(TensorFlow, https://tensorflowcn.cn/) **.cfg
(Darknet, https://pjreddie.com/darknet/) **.xml
(OpenVINO, https://software.intel.com/openvino-toolkit)- 返回
- Net 对象。此函数会自动检测训练模型的原始框架并调用相应的函数,例如 REF: readNetFromCaffe、REF: readNetFromTensorflow、REF: readNetFromTorch 或 REF: readNetFromDarknet。
model
和config
参数的顺序无关紧要。
-
readNet
public static Net readNet(java.lang.String framework, MatOfByte bufferModel, MatOfByte bufferConfig)
读取以一种受支持的格式表示的深度学习网络。这是一个重载的成员函数,为了方便提供。它与上述函数的区别仅在于它接受的参数。- 参数
framework
- 原框架名称。bufferModel
- 包含权重二进制文件内容的缓冲区。bufferConfig
- 包含网络配置文本文件内容的缓冲区。- 返回
- Net 对象。
-
readNet
public static Net readNet(java.lang.String framework, MatOfByte bufferModel)
读取以一种受支持的格式表示的深度学习网络。这是一个重载的成员函数,为了方便提供。它与上述函数的区别仅在于它接受的参数。- 参数
framework
- 原框架名称。bufferModel
- 包含权重二进制文件内容的缓冲区。- 返回
- Net 对象。
-
readTorchBlob
public static Mat readTorchBlob(java.lang.String filename, boolean isBinary)
加载序列化为Torch7框架的torch.Tensor对象的blob。警告:此函数与readNetFromTorch()具有相同的限制。- 参数
filename
- 自动生成isBinary
- 自动生成- 返回
- 自动生成
-
readTorchBlob
public static Mat readTorchBlob(java.lang.String filename)
加载序列化为Torch7框架的torch.Tensor对象的blob。警告:此函数与readNetFromTorch()具有相同的限制。- 参数
filename
- 自动生成- 返回
- 自动生成
-
readNetFromModelOptimizer
public static Net readNetFromModelOptimizer(java.lang.String xml, java.lang.String bin)
从Intel的模型优化器中间表示中加载网络。- 参数
xml
- 包含网络拓扑结构的XML配置文件。bin
- 包含已训练权重的二进制文件。- 返回
- Net 对象。从英特尔的模型优化器导入的网络在英特尔的推理引擎后端启动。
-
readNetFromModelOptimizer
public static Net readNetFromModelOptimizer(java.lang.String xml)
从Intel的模型优化器中间表示中加载网络。- 参数
xml
- 包含网络拓扑结构的XML配置文件。- 返回
- Net 对象。从英特尔的模型优化器导入的网络在英特尔的推理引擎后端启动。
-
readNetFromModelOptimizer
public static Net readNetFromModelOptimizer(MatOfByte bufferModelConfig, MatOfByte bufferWeights)
从Intel的模型优化器中间表示中加载网络。- 参数
bufferModelConfig
- 包含网络拓扑结构的XML配置的缓冲区。bufferWeights
- 包含已训练权重的二进制数据的缓冲区。- 返回
- Net 对象。从英特尔的模型优化器导入的网络在英特尔的推理引擎后端启动。
-
readNetFromONNX
public static Net readNetFromONNX(java.lang.String onnxFile)
读取ONNX网络模型。- 参数
onnxFile
- 包含网络架构文本描述的.onnx文件的路径。- 返回
- 准备好进行前向传播的网络对象,在失败的情况下抛出异常。
-
readNetFromONNX
public static Net readNetFromONNX(MatOfByte buffer)
从内存中的ONNX缓冲区读取网络模型。- 参数
buffer
- 存储ONNX模型字节的内存缓冲区。- 返回
- 准备好进行前向传播的网络对象,在失败的情况下抛出异常。
-
readTensorFromONNX
public static Mat readTensorFromONNX(java.lang.String path)
从 .pb 文件创建 Blob。- 参数
path
- 到包含输入张量的.pb文件的路径。- 返回
- Mat。
-
blobFromImage
public static Mat blobFromImage(Mat image, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop, int ddepth)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。scalefactor
-images
值的乘数。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。swapRB
- 指示是否需要交换3通道图像中第一个和最后一个通道的标志。crop
- 指示图像是否会在调整大小后被裁剪的标志。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。ddepth
- 输出blob的深度。选择CV_32F或CV_8U。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImage
public static Mat blobFromImage(Mat image, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。scalefactor
-images
值的乘数。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。swapRB
- 指示是否需要交换3通道图像中第一个和最后一个通道的标志。crop
- 指示图像是否会在调整大小后被裁剪的标志。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImage
public static Mat blobFromImage(Mat image, double scalefactor, Size size, Scalar mean, boolean swapRB)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。scalefactor
-images
值的乘数。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。swapRB
- 指示是否需要交换3通道图像中第一个和最后一个通道的标志。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImage
public static Mat blobFromImage(Mat image, double scalefactor, Size size, Scalar mean)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。scalefactor
-images
值的乘数。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImage
public static Mat blobFromImage(Mat image, double scalefactor, Size size)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。scalefactor
-images
值的乘数。size
- 输出图像的空间大小。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImage
public static Mat blobFromImage(Mat image, double scalefactor)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。scalefactor
-images
值的乘数。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImage
public static Mat blobFromImage(Mat image)
从图像创建四维blob。可以选择从中心调整和裁剪image
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
image
- 输入图像(具有1、3或4个通道)。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop, int ddepth)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(全部具有1、3或4个通道)。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。scalefactor
-images
值的乘数。swapRB
- 指示是否需要交换3通道图像中第一个和最后一个通道的标志。crop
- 指示图像是否会在调整大小后被裁剪的标志。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。ddepth
- 输出blob的深度。选择CV_32F或CV_8U。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean, boolean swapRB, boolean crop)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(全部具有1、3或4个通道)。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。scalefactor
-images
值的乘数。swapRB
- 指示是否需要交换3通道图像中第一个和最后一个通道的标志。crop
- 指示图像是否会在调整大小后被裁剪的标志。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean, boolean swapRB)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(全部具有1、3或4个通道)。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。scalefactor
-images
值的乘数。swapRB
- 指示是否需要交换3通道图像中第一个和最后一个通道的标志。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images, double scalefactor, Size size, Scalar mean)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(全部具有1、3或4个通道)。size
- 输出图像的空间大小。mean
- 包含从通道中减去的平均值的标量。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。scalefactor
-images
值的乘数。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images, double scalefactor, Size size)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(全部具有1、3或4个通道)。size
- 输出图像的空间大小。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。scalefactor
-images
值的乘数。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images, double scalefactor)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(全部具有1、3或4个通道)。如果image
具有BGR排序并且swapRB
为真,则值应为(mean-R, mean-G, mean-B)顺序。scalefactor
-images
值的乘数。如果crop
为真,则调整输入图像的大小,以便调整大小后的一侧等于size
中的相应维度,而另一侧等于或大于相应维度。然后,执行从中心的裁剪。如果crop
为假,则执行不裁剪并保持纵横比的直接调整大小。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImages
public static Mat blobFromImages(java.util.List<Mat> images)
从一系列图像创建四维blob。可以选择从中心调整和裁剪images
大小,减去mean
值,按scalefactor
缩放值,交换蓝色和红色通道。- 参数
images
- 输入图像(均为 1、3 或 4 通道)。如果image
的顺序为BGR且swapRB
为真,则应为 (mean-R, mean-G, mean-B) 顺序。对于3通道图像,此顺序是必要的。如果crop
为真,则调整输入图像大小,使其resize后的一边等于size
中对应的维度,另一边等于或大于该维度。然后,进行中心裁剪。如果crop
为假,则直接resize,不裁剪,并保持纵横比。- 返回
- 具有NCHW维度顺序的四维Mat。注意:
scalefactor
和mean
的顺序和用法是(input - mean) * scalefactor。
-
blobFromImageWithParams
public static Mat blobFromImageWithParams(Mat image, Image2BlobParams param)
根据给定的参数创建来自图像的四维 blob。此函数是 REF: blobFromImage 的扩展,以满足更多图像预处理需求。给定输入图像和预处理参数,函数输出 blob。- 参数
image
- 输入图像(均为 1、3 或 4 通道)。param
- Image2BlobParams 结构体,包含图像到 blob 处理所需的所有参数。- 返回
- 四维 Mat。
-
blobFromImageWithParams
public static Mat blobFromImageWithParams(Mat image)
根据给定的参数创建来自图像的四维 blob。此函数是 REF: blobFromImage 的扩展,以满足更多图像预处理需求。给定输入图像和预处理参数,函数输出 blob。- 参数
image
- 输入图像(均为 1、3 或 4 通道)。- 返回
- 四维 Mat。
-
blobFromImageWithParams
public static void blobFromImageWithParams(Mat image, Mat blob, Image2BlobParams param)
-
blobFromImagesWithParams
public static Mat blobFromImagesWithParams(java.util.List<Mat> images, Image2BlobParams param)
根据给定的参数创建来自一系列图像的四维 blob。此函数是 REF: blobFromImages 的扩展,以满足更多图像预处理需求。给定输入图像和预处理参数,函数输出 blob。- 参数
images
- 输入图像(均为 1、3 或 4 通道)。param
- Image2BlobParams 结构体,包含图像到 blob 处理所需的所有参数。- 返回
- 四维 Mat。
-
blobFromImagesWithParams
public static Mat blobFromImagesWithParams(java.util.List<Mat> images)
根据给定的参数创建来自一系列图像的四维 blob。此函数是 REF: blobFromImages 的扩展,以满足更多图像预处理需求。给定输入图像和预处理参数,函数输出 blob。- 参数
images
- 输入图像(均为 1、3 或 4 通道)。- 返回
- 四维 Mat。
-
blobFromImagesWithParams
public static void blobFromImagesWithParams(java.util.List<Mat> images, Mat blob, Image2BlobParams param)
-
blobFromImagesWithParams
public static void blobFromImagesWithParams(java.util.List<Mat> images, Mat blob)
-
imagesFromBlob
public static void imagesFromBlob(Mat blob_, java.util.List<Mat> images_)
解析一个 4D blob 并通过更简单的的数据结构 (std::vector<cv::Mat>) 输出它包含的图像作为二维数组。- 参数
blob_
- 四维数组 (图像、通道、高度、宽度),数据类型为单精度浮点数 (CV_32F),从中提取图像。images_
- 包含从 blob 中提取的图像的二维 Mat 数组,数据类型为单精度浮点数 (CV_32F)。它们既未归一化,也未添加均值。返回的图像数量等于 blob 的第一维(批大小)。每个图像的通道数等于 blob 的第二维(深度)。
-
shrinkCaffeModel
public static void shrinkCaffeModel(java.lang.String src, java.lang.String dst, java.util.List<java.lang.String> layersTypes)
将 Caffe 网络的所有权重转换为半精度浮点数。- 参数
src
- Caffe 框架中原始模型的路径,包含单精度浮点数权重(通常具有.caffemodel
扩展名)。dst
- 包含更新权重的目标模型的路径。layersTypes
- 将转换其参数的层类型集合。默认情况下,只转换卷积层和全连接层的权重。注意:缩减后的模型不再包含原始的 float32 权重,因此不能再在原始 Caffe 框架中使用。但是,数据结构取自 NVIDIA 的 Caffe 分支:https://github.com/NVIDIA/caffe。因此,生成的模型可以在那里使用。
-
shrinkCaffeModel
public static void shrinkCaffeModel(java.lang.String src, java.lang.String dst)
将 Caffe 网络的所有权重转换为半精度浮点数。- 参数
src
- Caffe 框架中原始模型的路径,包含单精度浮点数权重(通常具有.caffemodel
扩展名)。dst
- 包含更新权重的目标模型的路径。默认情况下,只转换卷积层和全连接层的权重。注意:缩减后的模型不再包含原始的 float32 权重,因此不能再在原始 Caffe 框架中使用。但是,数据结构取自 NVIDIA 的 Caffe 分支:https://github.com/NVIDIA/caffe。因此,生成的模型可以在那里使用。
-
writeTextGraph
public static void writeTextGraph(java.lang.String model, java.lang.String output)
为以 Protocol Buffer 格式存储的二进制网络创建文本表示。- 参数
model
- 二进制网络的路径。output
- 要创建的目标文本文件的路径。注意:为了减小输出文件大小,未包含训练权重。
-
NMSBoxes
public static void NMSBoxes(MatOfRect2d bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta, int top_k)
根据边界框和对应的得分执行非极大值抑制。- 参数
bboxes
- 应用 NMS 的一组边界框。scores
- 一组对应的置信度。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。eta
- 自适应阈值公式中的系数:\(nms\_threshold_{i+1}=eta\cdot nms\_threshold_i\)。top_k
- 如果>0
,则最多保留top_k
个选定的索引。
-
NMSBoxes
public static void NMSBoxes(MatOfRect2d bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta)
根据边界框和对应的得分执行非极大值抑制。- 参数
bboxes
- 应用 NMS 的一组边界框。scores
- 一组对应的置信度。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。eta
- 自适应阈值公式中的系数:\(nms\_threshold_{i+1}=eta\cdot nms\_threshold_i\)。
-
NMSBoxes
public static void NMSBoxes(MatOfRect2d bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices)
根据边界框和对应的得分执行非极大值抑制。- 参数
bboxes
- 应用 NMS 的一组边界框。scores
- 一组对应的置信度。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。
-
NMSBoxesRotated
public static void NMSBoxesRotated(MatOfRotatedRect bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta, int top_k)
-
NMSBoxesRotated
public static void NMSBoxesRotated(MatOfRotatedRect bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices, float eta)
-
NMSBoxesRotated
public static void NMSBoxesRotated(MatOfRotatedRect bboxes, MatOfFloat scores, float score_threshold, float nms_threshold, MatOfInt indices)
-
NMSBoxesBatched
public static void NMSBoxesBatched(MatOfRect2d bboxes, MatOfFloat scores, MatOfInt class_ids, float score_threshold, float nms_threshold, MatOfInt indices, float eta, int top_k)
对给定的边界框和不同类别对应的得分执行批处理非极大值抑制。- 参数
bboxes
- 应用 NMS 的一组边界框。scores
- 一组对应的置信度。class_ids
- 一组对应的类别 ID。ID 为整数,通常从 0 开始。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。eta
- 自适应阈值公式中的系数:\(nms\_threshold_{i+1}=eta\cdot nms\_threshold_i\)。top_k
- 如果>0
,则最多保留top_k
个选定的索引。
-
NMSBoxesBatched
public static void NMSBoxesBatched(MatOfRect2d bboxes, MatOfFloat scores, MatOfInt class_ids, float score_threshold, float nms_threshold, MatOfInt indices, float eta)
对给定的边界框和不同类别对应的得分执行批处理非极大值抑制。- 参数
bboxes
- 应用 NMS 的一组边界框。scores
- 一组对应的置信度。class_ids
- 一组对应的类别 ID。ID 为整数,通常从 0 开始。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。eta
- 自适应阈值公式中的系数:\(nms\_threshold_{i+1}=eta\cdot nms\_threshold_i\)。
-
NMSBoxesBatched
public static void NMSBoxesBatched(MatOfRect2d bboxes, MatOfFloat scores, MatOfInt class_ids, float score_threshold, float nms_threshold, MatOfInt indices)
对给定的边界框和不同类别对应的得分执行批处理非极大值抑制。- 参数
bboxes
- 应用 NMS 的一组边界框。scores
- 一组对应的置信度。class_ids
- 一组对应的类别 ID。ID 为整数,通常从 0 开始。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。
-
softNMSBoxes
public static void softNMSBoxes(MatOfRect bboxes, MatOfFloat scores, MatOfFloat updated_scores, float score_threshold, float nms_threshold, MatOfInt indices, long top_k, float sigma)
给定边界框和对应的分数,执行软非最大抑制。参考:https://arxiv.org/abs/1704.04503- 参数
bboxes
- 应用 Soft NMS 的一组边界框。scores
- 一组对应的置信度。updated_scores
- 一组对应的更新后的置信度。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。top_k
- 最多保留top_k
个选定的索引。sigma
- 高斯加权的参数。参见:SoftNMSMethod
-
softNMSBoxes
public static void softNMSBoxes(MatOfRect bboxes, MatOfFloat scores, MatOfFloat updated_scores, float score_threshold, float nms_threshold, MatOfInt indices, long top_k)
给定边界框和对应的分数,执行软非最大抑制。参考:https://arxiv.org/abs/1704.04503- 参数
bboxes
- 应用 Soft NMS 的一组边界框。scores
- 一组对应的置信度。updated_scores
- 一组对应的更新后的置信度。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。top_k
- 最多保留top_k
个选定的索引。参见:SoftNMSMethod
-
softNMSBoxes
public static void softNMSBoxes(MatOfRect bboxes, MatOfFloat scores, MatOfFloat updated_scores, float score_threshold, float nms_threshold, MatOfInt indices)
给定边界框和对应的分数,执行软非最大抑制。参考:https://arxiv.org/abs/1704.04503- 参数
bboxes
- 应用 Soft NMS 的一组边界框。scores
- 一组对应的置信度。updated_scores
- 一组对应的更新后的置信度。score_threshold
- 用于根据得分过滤框的阈值。nms_threshold
- 非最大抑制中使用的阈值。indices
- NMS 后保留的边界框索引。参见:SoftNMSMethod
-
getInferenceEngineBackendType
@Deprecated public static java.lang.String getInferenceEngineBackendType()
已弃用。返回 Inference Engine 内部后端 API。参见CV_DNN_BACKEND_INFERENCE_ENGINE_*
宏的值。自 4.6.0 版本起,忽略OPENCV_DNN_BACKEND_INFERENCE_ENGINE_TYPE
运行时参数(环境变量)。- 返回
- 自动生成
-
setInferenceEngineBackendType
@Deprecated public static java.lang.String setInferenceEngineBackendType(java.lang.String newBackendType)
已弃用。指定 Inference Engine 内部后端 API。参见CV_DNN_BACKEND_INFERENCE_ENGINE_*
宏的值。- 参数
newBackendType
- 自动生成- 返回
- 内部后端 API 的先前值
-
resetMyriadDevice
public static void resetMyriadDevice()
释放 Myriad 设备(由 OpenCV 绑定)。单个 Myriad 设备不能在使用 Inference Engine 的 Myriad 插件的多个进程之间共享。
-
getInferenceEngineVPUType
public static java.lang.String getInferenceEngineVPUType()
返回 Inference Engine VPU 类型。参见CV_DNN_INFERENCE_ENGINE_VPU_TYPE_*
宏的值。- 返回
- 自动生成
-
getInferenceEngineCPUType
public static java.lang.String getInferenceEngineCPUType()
返回 Inference Engine CPU 类型。指定 OpenVINO 插件:CPU 或 ARM。- 返回
- 自动生成
-
releaseHDDLPlugin
public static void releaseHDDLPlugin()
释放 HDDL 插件。
-
-