日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

OpenCV 笔记(07)— Mat 对象输出格式设置(Python 格式、CSV 格式、NumPy 格式、C 语言格式)

發布時間:2023/11/28 生活经验 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV 笔记(07)— Mat 对象输出格式设置(Python 格式、CSV 格式、NumPy 格式、C 语言格式) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先是下面代碼中將要使用的 r 矩陣的定義。需要注意,我們可以通過用 randu 函數產生的隨機值來填充矩陣, 需要給定一個上限和下限來確保隨機值在期望的范圍內。

Mat r = Mat(2, 3, CV_8UC3);
randu(r, Scalar::all(0), Scalar::all(255));

1. OpenCV 默認格式

cout << "r [默認風格]is "<< endl << r << endl;

輸出格式如下:

r [默認風格]is 
[ 91,   2,  79, 179,  52, 205, 236,   8, 181;239,  26, 248, 207, 218,  45, 183, 158, 101]

2. Python 格式

// OpenCV3 以上版本
cout << "r [Python風格]is "<< endl << format(r, Formatter::FMT_PYTHON)<< endl;
// OpenCV2 版本
cout << "r [Python風格]is "<< endl << format(r, "python")<< endl;

輸出格式如下:

r [Python風格]is 
[[[ 91,   2,  79], [179,  52, 205], [236,   8, 181]],[[239,  26, 248], [207, 218,  45], [183, 158, 101]]]

3. CSV 格式

// OpenCV3 以上版本
cout << "r [逗號風格]is "<< endl << format(r, Formatter::FMT_CSV)<< endl;
// OpenCV2 版本
cout << "r [逗號風格]is "<< endl << format(r, "csv")<< endl;

輸出結果:

r [逗號風格]is 91,   2,  79, 179,  52, 205, 236,   8, 181
239,  26, 248, 207, 218,  45, 183, 158, 101

4. NumPy 格式

// OpenCV3 以上版本
cout << "r [Numpy風格]is "<< endl << format(r, Formatter::FMT_NUMPY)<< endl;
// OpenCV2 版本
cout << "r [Numpy風格]is "<< endl << format(r, "numpy")<< endl;

輸出結果:

r [Numpy風格]is 
array([[[ 91,   2,  79], [179,  52, 205], [236,   8, 181]],[[239,  26, 248], [207, 218,  45], [183, 158, 101]]], dtype='uint8')

5. C 語言格式

// OpenCV3 以上版本
cout << "r [C 語言風格]is "<< endl << format(r, Formatter::FMT_C)<< endl;
// OpenCV2 版本
cout << "r [C 語言風格]is "<< endl << format(r, "C")<< endl;

輸出結果:

r [C 語言風格]is 
{ 91,   2,  79, 179,  52, 205, 236,   8, 181,239,  26, 248, 207, 218,  45, 183, 158, 101}

6. 完整代碼

#include <iostream>
#include "opencv2/opencv.hpp"using namespace cv;	
using namespace std;int main()
{Mat r = Mat(2, 3, CV_8UC3);randu(r, Scalar::all(0), Scalar::all(255));cout << "r [默認風格]is "<< endl << r << endl;cout << "r [Python風格]is "<< endl << format(r, Formatter::FMT_PYTHON)<< endl;cout << "r [逗號風格]is "<< endl << format(r, Formatter::FMT_CSV)<< endl;cout << "r [Numpy風格]is "<< endl << format(r, Formatter::FMT_NUMPY)<< endl;cout << "r [C 語言風格]is "<< endl << format(r, Formatter::FMT_C)<< endl;return 0;
}

總結

以上是生活随笔為你收集整理的OpenCV 笔记(07)— Mat 对象输出格式设置(Python 格式、CSV 格式、NumPy 格式、C 语言格式)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。