中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

軟件測(cè)試自學(xué)網(wǎng)站考證培訓(xùn)機(jī)構(gòu)報(bào)名網(wǎng)站

軟件測(cè)試自學(xué)網(wǎng)站,考證培訓(xùn)機(jī)構(gòu)報(bào)名網(wǎng)站,axure怎么做網(wǎng)站原型,網(wǎng)站建設(shè)找c宋南南圖像裁剪、調(diào)整大小、旋轉(zhuǎn)、透視圖像處理基本操作。 croppedImage 圖像裁剪Cv2.Resize() 調(diào)整圖像大小圖像旋轉(zhuǎn) Cv2.Rotate()旋轉(zhuǎn)Cv2.Flip()翻轉(zhuǎn)Cv2.WarpAffine()任意角度旋轉(zhuǎn)Cv2.GetAffineTransform()透視 一、圖像裁剪 // 讀取原始圖像 Mat image new Mat("1.png&q…

圖像裁剪、調(diào)整大小、旋轉(zhuǎn)、透視圖像處理基本操作。

  1. croppedImage?圖像裁剪
  2. Cv2.Resize() 調(diào)整圖像大小
  3. 圖像旋轉(zhuǎn)
  • Cv2.Rotate()旋轉(zhuǎn)
  • Cv2.Flip()翻轉(zhuǎn)
  • Cv2.WarpAffine()任意角度旋轉(zhuǎn)
  • Cv2.GetAffineTransform()透視

一、圖像裁剪

// 讀取原始圖像
Mat image = new Mat("1.png", ImreadModes.Color);
// 設(shè)置感興趣區(qū)域的坐標(biāo)和尺寸
Rect roi = new Rect(100, 100, 200, 200);//坐標(biāo) x,y 尺寸 長(zhǎng)寬
// 裁剪圖像
Mat croppedImage = new Mat(image, roi);
// 顯示圖片
Cv2.ImShow("image", image);
Cv2.ImShow("croppedImage", croppedImage);

二、調(diào)整圖像大小

void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR );

參數(shù)說(shuō)明

  • src:輸入,原圖像,即待改變大小的圖像;
  • dst:輸出,改變大小之后的圖像,這個(gè)圖像和原圖像具有相同的內(nèi)容,只是大小和原圖像不一樣而已;
  • dsize:輸出圖像的大小。如果這個(gè)參數(shù)不為0,那么就代表將原圖像縮放到這個(gè)Size(width,height)指定的大小;如果這個(gè)參數(shù)為0,那么原圖像縮放之后的大小就要通過(guò)下面的公式來(lái)計(jì)算:
  • ? ? ? ?dsize = Size(round(fx*src.cols), round(fy*src.rows))
  • ? ? ? ?其中,fx和fy就是下面要說(shuō)的兩個(gè)參數(shù),是圖像width方向和height方向的縮放比例。
  • fx:width方向的縮放比例,如果它是0,那么它就會(huì)按照(double)dsize.width/src.cols來(lái)計(jì)算;
  • fy:height方向的縮放比例,如果它是0,那么它就會(huì)按照(double)dsize.height/src.rows來(lái)計(jì)算;
  • interpolation:這個(gè)是指定插值的方式,圖像縮放之后,肯定像素要進(jìn)行重新計(jì)算的,就靠這個(gè)參數(shù)來(lái)指定重新計(jì)算像素的方式,有以下幾種:
  • ? ? ? INTER_NEAREST - 最鄰近插值
  • ? ? ? INTER_LINEAR - 雙線性插值,如果最后一個(gè)參數(shù)你不指定,默認(rèn)使用這種方法
  • ? ? ? INTER_AREA -區(qū)域插值 resampling using pixel area relation. It may be a preferred method for image decimation, as it gives moire’-free results. But when the image is zoomed, it is similar to the INTER_NEAREST method.
  • ? ? ? INTER_CUBIC - 4x4像素鄰域內(nèi)的雙立方插值
  • ? ? ? INTER_LANCZOS4 - 8x8像素鄰域內(nèi)的Lanczos插值
void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR );Mat srcImage = new Mat("1.png", ImreadModes.Color);// 臨時(shí)變量和目標(biāo)圖的定義Mat dstImage1 = new Mat();Mat dstImage2 = new Mat();Mat dstImage3= new Mat();Mat dstImage4 = new Mat();//進(jìn)行尺寸調(diào)整操作Cv2.Resize(srcImage, dstImage1, new OpenCvSharp.Size(srcImage.Cols / 2, srcImage.Rows / 2), (double)InterpolationFlags.Linear);Cv2.Resize(srcImage, dstImage2, new OpenCvSharp.Size(srcImage.Cols / 2, srcImage.Cols / 2), (double)InterpolationFlags.Area);Cv2.Resize(srcImage, dstImage3, new OpenCvSharp.Size(srcImage.Cols * 2, srcImage.Cols * 2), (double)InterpolationFlags.Cubic);Cv2.Resize(srcImage, dstImage4, new OpenCvSharp.Size(srcImage.Cols * 2, srcImage.Cols * 2), (double)InterpolationFlags.Linear);Cv2.ImShow("dstImage1", dstImage1);Cv2.ImShow("dstImage2", dstImage2);Cv2.ImShow("dstImage3", dstImage3);Cv2.ImShow("dstImage4", dstImage4);
OpenCV圖像縮放resize各種插值方式的比較

三、圖片旋轉(zhuǎn)

  1. 左旋轉(zhuǎn)90° Cv2.Rotate(src, dst, RotateFlags.Rotate90CounterClockwise);
  2. 右旋轉(zhuǎn)90° Cv2.Rotate(src, dst, RotateFlags.Rotate90Clockwise);
  3. 旋轉(zhuǎn)180°?Cv2.Rotate(src, dst, RotateFlags.Rotate180);
  4. 垂直翻轉(zhuǎn)?Cv2.Flip(src, dst, FlipMode.Y);
  5. 水平翻轉(zhuǎn)Cv2.Flip(src, dst, FlipMode.X);
using OpenCvSharp;
using System;class Program
{static void Main(){Mat src = new Mat("input.jpg", ImreadModes.Color);Mat dst = new Mat();Cv2.Rotate(src, dst, RotateFlags.Rotate90Clockwise);Cv2.ImShow("dst", dst);Cv2.WaitKey(0);}
}

6.任意角度旋轉(zhuǎn)

Cv2.WarpAffine(
? ? ? ? ?InputArray ? ? ?src, // 輸入圖像
? ? ? ? ?OutputArray dst, // 輸出圖像
? ? ? ? ?InputArray ? ? ?M, // 旋轉(zhuǎn)矩陣
? ? ? ? ?Size ? ? ? ? dsize, // 輸出圖像大小
? ? ? ? ?int ? flags = INTER_LINEAR, // 像素插值方式
? ? ? ? ?int ? borderMode = BORDER_CONSTANT, // 背景填充默認(rèn)為常量
? ? ? ? ?const Scalar & ? ? ? ?borderValue = Scalar() // 填充顏色默認(rèn)為黑色
)

using OpenCvSharp;Mat img = new Mat("1.png", ImreadModes.Grayscale);
Point2f center = new Point2f(img.Cols / 2f, img.Rows / 2f);
//使用了Cv2.GetRotationMatrix2D()函數(shù)構(gòu)建旋轉(zhuǎn)矩陣,然后使用Cv2.WarpAffine()函數(shù)進(jìn)行仿射變換。
Mat matrix = Cv2.GetRotationMatrix2D(center, 45, 0.6);
Cv2.WarpAffine(img, img, matrix, img.Size());
Cv2.ImShow("img", img);
Cv2.WaitKey(0);
Cv2.DestroyAllWindows();

7.圖像透視

Cv2.GetAffineTransform(srcPoints, dstPoints);

參數(shù)

src: 代表輸入圖像的三個(gè)點(diǎn)坐標(biāo), 形為:[[col_1, row_1], [col_2, row_2], [col_3, row_3]]
dst: 代表輸出圖像的三個(gè)點(diǎn)坐標(biāo), 形為:[[col_4, row_4], [col_5, row_5], [col_6, row_6]]
點(diǎn)1 由位置 [col_1, row_1] 移動(dòng)到 [col_4, row_4]
點(diǎn)2 由位置 [col_2, row_2] 移動(dòng)到 [col_5, row_5]
點(diǎn)3 由位置 [col_3, row_3] 移動(dòng)到 [col_6, row_6]
由這3個(gè)點(diǎn)的位置變化,可以得到 變化矩陣 M
————————————————
版權(quán)聲明:本文為CSDN博主「Enzo 想砸電腦」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_37804469/article/details/112304112

using OpenCvSharp;Mat src = new Mat("input.jpg", ImreadModes.Color);
Mat dst = new Mat();Point2f[] srcPoints = new Point2f[]
{new Point2f(0, 0),new Point2f(src.Cols, 0),new Point2f(0, src.Rows)
};Point2f[] dstPoints = new Point2f[]
{new Point2f(src.Cols * 0.0f, src.Rows * 0.33f),new Point2f(src.Cols * 0.85f, src.Rows * 0.25f),new Point2f(src.Cols * 0.15f, src.Rows * 0.7f)
};Mat affineMatrix = Cv2.GetAffineTransform(srcPoints, dstPoints);
Cv2.WarpAffine(src, dst, affineMatrix, src.Size());Cv2.ImShow("src", src);
Cv2.ImShow("dst", dst);
Cv2.WaitKey();

?

c# OpenCV 圖像裁剪、調(diào)整大小、旋轉(zhuǎn)、透視(三)?

c#OpenCV 讀取、顯示和寫(xiě)入圖像(二)

c# OpenCV安裝(一)?

http://www.risenshineclean.com/news/27151.html

相關(guān)文章:

  • 專(zhuān)門(mén)做玉的網(wǎng)站企業(yè)網(wǎng)站的在線推廣方法有
  • 做網(wǎng)站公司深圳seo優(yōu)化服務(wù)價(jià)格
  • 武漢app開(kāi)發(fā)靠譜的公司湖北網(wǎng)站seo策劃
  • 網(wǎng)站被收錄要怎么做電腦培訓(xùn)網(wǎng)上課程
  • 網(wǎng)站建設(shè)叁金手指花總1百度河南代理商
  • 建設(shè)摩托車(chē)站長(zhǎng)seo查詢(xún)工具
  • 弱電網(wǎng)站源碼小視頻網(wǎng)站哪個(gè)可以推廣
  • 黃村網(wǎng)站建設(shè)費(fèi)用線上渠道推廣有哪些方式
  • 網(wǎng)站登錄頁(yè)模板微商營(yíng)銷(xiāo)技巧
  • dedecms 如何關(guān)閉網(wǎng)站搜狗站長(zhǎng)
  • 微信公眾號(hào)h5商城網(wǎng)站開(kāi)發(fā)網(wǎng)站建設(shè)及網(wǎng)站推廣
  • 惡意網(wǎng)站是怎么實(shí)現(xiàn)的seo優(yōu)化員
  • 網(wǎng)站維護(hù)主要是做哪些百度教育app
  • 網(wǎng)站建設(shè)基本流程圖片網(wǎng)站頁(yè)面分析作業(yè)
  • python網(wǎng)站開(kāi)發(fā)招聘崇左網(wǎng)站建設(shè)
  • 個(gè)體戶(hù)可以做網(wǎng)站建設(shè)線上推廣工作內(nèi)容
  • 公司網(wǎng)站建設(shè)與維護(hù)能讓網(wǎng)絡(luò)非常流暢的軟件
  • 山西住房建設(shè)廳網(wǎng)站福建網(wǎng)絡(luò)seo關(guān)鍵詞優(yōu)化教程
  • 做網(wǎng)站的產(chǎn)品圖片搜索排行榜
  • 怎么做詐騙網(wǎng)站嗎青島seo網(wǎng)站排名
  • 邦策網(wǎng)站建設(shè)免費(fèi)站長(zhǎng)統(tǒng)計(jì)工具
  • 做品牌的人常用的網(wǎng)站百度查詢(xún)
  • 山東做網(wǎng)站的軟文廣告范例大全
  • 做業(yè)務(wù)網(wǎng)站友鏈交易交易平臺(tái)
  • 建設(shè)微信商城網(wǎng)站寧波seo搜索引擎優(yōu)化公司
  • 張店做網(wǎng)站公司培訓(xùn)機(jī)構(gòu)排名全國(guó)十大教育機(jī)構(gòu)排名
  • 抖音logo在線設(shè)計(jì)生成器免費(fèi)石景山區(qū)百科seo
  • 武威百度做網(wǎng)站多少錢(qián)百度怎么轉(zhuǎn)人工客服
  • 免費(fèi)空間凡科連云港seo
  • 品質(zhì)好的深圳裝修優(yōu)化營(yíng)商環(huán)境發(fā)言稿