当前位置: 首页 > news >正文

python 网站开发框架公司网站建设推进表

python 网站开发框架,公司网站建设推进表,上海工商查询网官方网站,做网站免费吗发现一个很好的OpenCV教学博客#xff1a;http://monkeycoding.com/?p531 看了看Mat的初始化方式#xff0c;初始化是不分配空间的#xff0c;而需要img.create()分配空间。 影像格式(Mat) Mat是OpenCV訂定的資料型態#xff0c;代表的是矩陣(Matrix)前三個字母#xff…发现一个很好的OpenCV教学博客http://monkeycoding.com/?p531 看了看Mat的初始化方式初始化是不分配空间的而需要img.create()分配空间。 影像格式(Mat) Mat是OpenCV訂定的資料型態代表的是矩陣(Matrix)前三個字母影像其實也可以看成是某個二維陣列所以在OpenCV 2.0裡不論矩陣計算或是影像處裡的格式都是以Mat類別進行處理並有相關的成員變數和函式方便使用使用時不用考慮記憶體管理這也是OpenCV 1.0和2.0不同之處這邊介紹常用的Mat類別成員和成員函式包括如何得到影像資訊、創建影像、複製影像、改變位元深度和操作像素強度。 內文索引 [隱藏] 1 影像資訊 2 影像創建 3 影像分配空間 4 影像複製 5 改變影像型態。 6 操作像素 7 操作像素 8 歸零 影像資訊 Mat最基本有長、寬、像素型態、像素深度、通道數等資訊以下介紹的成員變數或成員函式讓我們得到這些資訊。 成員變數 意義 rows 影像的列數也就是影像高 cols 影像的欄數也就是影像寬 OpenCV通道數int Mat::channels() const 返回影像的通道數灰階圖為1彩色圖為3。 OpenCV像素深度int Mat::depth() const L以下表格列出部分返回的像素深度 CV_8U 位元深度為8U代表無負號 CV_8S 位元深度為8S代表有負號 CV_16U 位元深度為16無負號 CV_32F 浮點數 OpenCV像素型態int Mat::type() const 型態和深度主要差在型態有通道數資訊比如CV_8UC3代表影像通道數3以下表格列出部分返回的像素深度 CV_8U 位元深度為8無負號通道數1 CV_8S 位元深度為8有負號通道數1 CV_16U 位元深度為16無負號通道數1 CV_32F 浮點數資料通道數1 CV_8UC3 位元深度為8無負號通道數3 OpenCV影像尺寸Size Mat::size() const 返回影像的尺寸Size(cols, rows)cols和rows分別表示寬和高。 影像創建 OpenCV Mat建構式Mat(int rows, int cols, int type, const cv::Scalar s) rows影像高度。 cols影像寬度。 type影像型態。 s像素值我們可以在一開始建構式就指定像素值像灰階圖的強度或是BGR分別的像素強度。 要注意建構式的參數是先輸入高度在寬度。 以下為使用方式 Mat img1(240, 320, CV_8U); Mat img2(240, 320, CV_8U, Scalar(100)); Mat img3(240, 320, CV_8UC3, Scalar(200,100,0));影像分配空間 我們可以對空的或已有資料的Mat重新分配空間也就是改變影像的長、寬或像素型態。 OpenCV 空間分配void Mat::create(int rows, int cols, int type) rows影像高度。 cols影像寬度。 type影像型態。 參數是先輸入高度再寬度且因為效率的考量假使輸入的尺寸、型態和呼叫影像相同函式直接返回不會重新分配空間。 以下為使用方式 Mat img; img.create(300, 400, CV_8U); 影像複製 這邊介紹三種複製影像的方式第一種為多載等號運算子第二、三種分別為Mat的成員函式。 OpenCV等號多載Mat Mat::operator(const Mat m) m輸入圖左邊影像和右邊影像相同不會另外複製一份資料。 OpenCV影像複製Mat::copyTo(OutputArray m) const m輸出圖輸出圖會變成和呼叫影像一樣的長、寬、像素值。 OpenCV影像複製Mat Mat::clone() const 返回和呼叫影像相同的一份複製影像。 用等號運算子時如上面的img1和img2兩者共用一份數據所以只要改變一個另一個會隨之變更而copyTo()和clone()為複製一份新的數據所以不會互相影響以下為使用方式 Mat img1(240, 320, CV_8U, Scalar(100)); Mat img2, img3, img4; img2 img1; img1.copyTo(img3); img4 img1.clone(); 改變影像型態。 void Mat::convertTo(OutputArray m, int rtype, double alpha1, double beta0) m輸出圖如果尺寸或型態和呼叫影像不同會重新分配空間。 rtype輸出圖的型態呼叫影像和輸出圖的通道數會相同。 alpha輸出圖放大倍率預設為1。 beta 輸出圖增加量預設為0。 操作像素 at()用來訪問像素可返回左值或右值所以我們可用at()得到或改變某個像素值這函式使用模板所以使用時除了輸入位置還必須需入影像的像素型態使用at()函式時輸入參數順序同樣為先高再寬。。 OpenCV改變像素template T Mat::at(int i, int j) OpenCV讀取像素template const T Mat::at(int i, int j) const 在灰階圖中OpenCV裡可用uchar代替uncigned char在彩色圖中OpenCV裡可用Vec3b代替將3個uchar組成的容器(vector)且可在後面加上[]註明是要操作此像素的哪個通道。 下面操作一個8位元灰階圖分別改變某個像素的值以及查看此像素的值 Mat gray_img(100, 100, CV_8U, Scalar(100)); gray_img.atuchar(30,20) 255; uchar value1 gray_img.atuchar(30,20); 下面分別改變彩色圖某個像素的第一通道值以及查看此像素第一通道的值 Mat color_img(100, 100, CV_8UC3, Scalar(200,100,0)); img.atVec3b(30,20)[0] 255; uchar value2 img.atVec3b(30,20)[0]; 操作像素 ptr函式輸入指定列返回一個指標指向此列的第一個像素通常為尋訪影像用到ptr可讀取或改變像素值同樣使用模板所以也必須需入影像的像素型態。 OpenCV改變像素template T* Mat::ptr(int i0) OpenCV讀取像素template const T* Mat::ptr(int i0) const
http://wiki.neutronadmin.com/news/397083/

相关文章:

  • 郑州网站建设更好建立网站有什么要求
  • 多少钱做网站策划大型活动公司
  • 长春 网站 设计公司深圳黄页信息网
  • 刚做还网站第一时间抓取vscode怎么做网页
  • 企业网站建设内容规划wordpress 游戏网页
  • 微信官方网站首页成都网站建设 冠辰网站建设
  • 好看的网站色彩搭配wordpress主题tstyle
  • 自适应网站是什么五易网络
  • 郑州响应式建站高新区规划建设局网站
  • 重庆网站备案公司新丝路网站建设
  • 网站统计 中文域名去大连需要下载哪些软件
  • 学编程做网站wordpress迁移修改域名
  • 叫外包公司做网站不肯给源代码的网站开发如何找甲方
  • php网站开发实战教程安徽外经建设集团网站
  • 多用户智能网站建设源码在线教育网站开发文档
  • 关于网站开发的文献设计素材网站情人节
  • 凡科网做网站贵吗怎么自己创建一个网站
  • 纺织面料做哪个网站好山西建设注册中心网站
  • 齐齐哈尔企业网站排名优化合肥市蜀山区做个网站多少钱
  • 武邑网站建设价格app开发定制开发
  • 网站用户反馈托管管理系统app
  • 网站升级建设费用吗福州哪里会网站制作的
  • 手机靓号网站建设线上线下相结合的营销模式
  • 网站开发用什么系统比较好360免费wifi怎么安装
  • 南通做网站优化个人网站备案能做什么内容
  • 自己做电视视频网站关于网站建设的论坛
  • 建设银行长沙招聘网站wordpress get_most_viewed
  • 杭州 电子商务网站建设 网络服务网站建设有哪几种形式
  • 网站开发与设计多少钱一个网站什么是嵌入式软件工程师
  • 标准网站是哪个创建网页的三种方法