OpenCV 图形API(13)用于执行两个矩阵(或图像)逐元素乘法操作的函数mul()

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

描述

计算两个矩阵的每个元素的缩放乘积。

mul函数计算两个矩阵的逐元素乘积:
dst ( I ) = saturate ( scale ⋅ src1 ( I ) ⋅ src2 ( I ) ) \texttt{dst} (I)= \texttt{saturate} ( \texttt{scale} \cdot \texttt{src1} (I) \cdot \texttt{src2} (I)) dst(I)=saturate(scale⋅src1(I)⋅src2(I))

如果 src1.depth() == src2.depth(),ddepth 可以设置为默认值 -1。在这种情况下,输出矩阵将具有与输入矩阵相同的深度。矩阵可以是单通道或多通道。输出矩阵必须与输入矩阵具有相同的大小。

支持的矩阵数据类型包括:CV_8UC1、CV_8UC3、CV_16UC1、CV_16SC1、CV_32FC1。

注意:

该函数的文本ID是 "org.opencv.core.math.mul"。

函数原型

cpp 复制代码
GMat cv::gapi::mul
(
 	const GMat &  	src1,
	const GMat &  	src2,
	double  	scale = 1.0,
	int  	ddepth = -1 
) 		

参数

  • 参数src1:第一个输入矩阵。
  • 参数src2:与 src1 大小和深度相同的第二个输入矩阵。
  • 参数scale:可选的比例因子。
  • 参数ddepth:输出矩阵的可选深度。

代码示例

cpp 复制代码
#include <opencv2/gapi.hpp>
#include <opencv2/gapi/core.hpp>
#include <opencv2/gapi/imgproc.hpp>
#include <opencv2/opencv.hpp>

int main()
{
    // 创建G-API网络编译器
    cv::GComputation comp( []() {
        // 定义输入
        cv::GMat src1, src2;
        // 计算src1和src2的逐元素乘积,并应用比例因子
        cv::GMat dst = cv::gapi::mul( src1, src2, 1.5, -1 );  // 使用1.5作为scale因子,深度与输入相同
        // 返回计算图
        return cv::GComputation( cv::GIn( src1, src2 ), cv::GOut( dst ) );
    } );

    // 创建一些示例数据
    cv::Mat mat1 = ( cv::Mat_< uchar >( 2, 2 ) << 1, 2, 3, 4 );
    cv::Mat mat2 = ( cv::Mat_< uchar >( 2, 2 ) << 5, 6, 7, 8 );

    // 输出矩阵
    cv::Mat result;

    // 在CPU上运行计算图
    comp.apply( cv::gin( mat1, mat2 ), cv::gout( result ) );

    // 打印结果
    std::cout << "Result: \n" << result << std::endl;

    return 0;
}

运行结果

bash 复制代码
Result: 
[  8,  18;
  32,  48]
相关推荐
whoarethenext1 小时前
使用 C++/OpenCV 和 MFCC 构建双重认证智能门禁系统
开发语言·c++·opencv·mfcc
jndingxin1 小时前
OpenCV CUDA模块设备层-----高效地计算两个 uint 类型值的带权重平均值
人工智能·opencv·计算机视觉
Sweet锦1 小时前
零基础保姆级本地化部署文心大模型4.5开源系列
人工智能·语言模型·文心一言
hie988942 小时前
MATLAB锂离子电池伪二维(P2D)模型实现
人工智能·算法·matlab
晨同学03272 小时前
opencv的颜色通道问题 & rgb & bgr
人工智能·opencv·计算机视觉
蓝婷儿2 小时前
Python 机器学习核心入门与实战进阶 Day 3 - 决策树 & 随机森林模型实战
人工智能·python·机器学习
大千AI助手2 小时前
PageRank:互联网的马尔可夫链平衡态
人工智能·机器学习·贝叶斯·mc·pagerank·条件概率·马尔科夫链
小和尚同志3 小时前
Cline | Cline + Grok3 免费 AI 编程新体验
人工智能·aigc
我就是全世界3 小时前
TensorRT-LLM:大模型推理加速的核心技术与实践优势
人工智能·机器学习·性能优化·大模型·tensorrt-llm
.30-06Springfield3 小时前
决策树(Decision tree)算法详解(ID3、C4.5、CART)
人工智能·python·算法·决策树·机器学习