- 操作系統:ubuntu22.04
- OpenCV版本:OpenCV4.9
- IDE:Visual Studio Code
- 編程語言:C++11
描述
將矩陣與標量相乘。
mulC 函數將給定矩陣 src 的每個元素乘以一個給定的標量值:
dst ( I ) = saturate ( src1 ( I ) ? multiplier ) \texttt{dst} (I)= \texttt{saturate} ( \texttt{src1} (I) \cdot \texttt{multiplier} ) dst(I)=saturate(src1(I)?multiplier)
矩陣可以是單通道或多通道。輸出矩陣必須與 src 具有相同的大小。
支持的矩陣數據類型包括:CV_8UC1、CV_8UC3、CV_16UC1、CV_16SC1、CV_32FC1。
注意:
該函數的文本ID是 “org.opencv.core.math.mulC”。
函數原型
GMat cv::gapi::mulC
(const GMat & src,double multiplier,int ddepth = -1
)
參數
- 參數src:輸入矩陣。
- 參數 multiplier:要乘以的因子。
- 參數 ddepth:輸出矩陣的可選深度。如果為 -1,輸出矩陣的深度將與輸入矩陣的深度相同。
代碼示例
#include <opencv2/gapi.hpp>
#include <opencv2/gapi/core.hpp>
#include <opencv2/opencv.hpp>int main()
{// 創建一個示例矩陣cv::Mat src = ( cv::Mat_< double >( 2, 2 ) << 1.0, 2.0, 3.0, 4.0 );// 標量乘數double multiplier = 2.5;// 定義G-API計算圖cv::GComputation mulComp( [ multiplier ]() { // 捕獲multipliercv::GMat in;cv::GMat out = cv::gapi::mulC( in, multiplier );return cv::GComputation( cv::GIn( in ), cv::GOut( out ) );} );// 輸出矩陣cv::Mat dst;// 執行計算圖,這里我們不指定特定的backend,使用默認設置mulComp.apply( src, dst, cv::compile_args() );// 打印結果std::cout << "Result: \n" << dst << std::endl;return 0;
}
運行結果
Result:
[2.5, 5;7.5, 10]