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

珠海市网站建设_网站建设公司_Figma_seo优化

域名网站有哪些,山东公司网页定制,网站建设汇报材料,网站开发项目图像裁剪、调整大小、旋转、透视图像处理基本操作。 croppedImage 图像裁剪Cv2.Resize() 调整图像大小图像旋转 Cv2.Rotate()旋转Cv2.Flip()翻转Cv2.WarpAffine()任意角度旋转Cv2.GetAffineTransform()透视 一、图像裁剪 // 读取原始图像 Mat image new Mat(1.png new Mat(1.png, ImreadModes.Color); // 设置感兴趣区域的坐标和尺寸 Rect roi new Rect(100, 100, 200, 200);//坐标 x,y 尺寸 长宽 // 裁剪图像 Mat croppedImage new Mat(image, roi); // 显示图片 Cv2.ImShow(image, image); Cv2.ImShow(croppedImage, croppedImage); 二、调整图像大小 void resize(InputArray src, OutputArray dst, Size dsize, double fx0, double fy0, int interpolationINTER_LINEAR ); 参数说明 src输入原图像即待改变大小的图像dst输出改变大小之后的图像这个图像和原图像具有相同的内容只是大小和原图像不一样而已dsize输出图像的大小。如果这个参数不为0那么就代表将原图像缩放到这个Size(widthheight)指定的大小如果这个参数为0那么原图像缩放之后的大小就要通过下面的公式来计算       dsize Size(round(fx*src.cols), round(fy*src.rows))       其中fx和fy就是下面要说的两个参数是图像width方向和height方向的缩放比例。fxwidth方向的缩放比例如果它是0那么它就会按照(double)dsize.width/src.cols来计算fyheight方向的缩放比例如果它是0那么它就会按照(double)dsize.height/src.rows来计算interpolation这个是指定插值的方式图像缩放之后肯定像素要进行重新计算的就靠这个参数来指定重新计算像素的方式有以下几种      INTER_NEAREST - 最邻近插值      INTER_LINEAR - 双线性插值如果最后一个参数你不指定默认使用这种方法      INTER_AREA -区域插值 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像素邻域内的双立方插值      INTER_LANCZOS4 - 8x8像素邻域内的Lanczos插值 void resize(InputArray src, OutputArray dst, Size dsize, double fx0, double fy0, int interpolationINTER_LINEAR );Mat srcImage new Mat(1.png, ImreadModes.Color);// 临时变量和目标图的定义Mat dstImage1 new Mat();Mat dstImage2 new Mat();Mat dstImage3 new Mat();Mat dstImage4 new Mat();//进行尺寸调整操作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各种插值方式的比较 三、图片旋转 左旋转90° Cv2.Rotate(src, dst, RotateFlags.Rotate90CounterClockwise);右旋转90° Cv2.Rotate(src, dst, RotateFlags.Rotate90Clockwise);旋转180° Cv2.Rotate(src, dst, RotateFlags.Rotate180);垂直翻转 Cv2.Flip(src, dst, FlipMode.Y);水平翻转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.任意角度旋转 Cv2.WarpAffine(          InputArray      src, // 输入图像          OutputArray dst, // 输出图像          InputArray      M, // 旋转矩阵          Size         dsize, // 输出图像大小          int   flags INTER_LINEAR, // 像素插值方式          int   borderMode BORDER_CONSTANT, // 背景填充默认为常量          const Scalar        borderValue Scalar() // 填充颜色默认为黑色 ) using OpenCvSharp;Mat img new Mat(1.png, ImreadModes.Grayscale); Point2f center new Point2f(img.Cols / 2f, img.Rows / 2f); //使用了Cv2.GetRotationMatrix2D()函数构建旋转矩阵然后使用Cv2.WarpAffine()函数进行仿射变换。 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); 参数 src: 代表输入图像的三个点坐标, 形为[[col_1, row_1], [col_2, row_2], [col_3, row_3]] dst: 代表输出图像的三个点坐标, 形为[[col_4, row_4], [col_5, row_5], [col_6, row_6]] 点1 由位置 [col_1, row_1] 移动到 [col_4, row_4] 点2 由位置 [col_2, row_2] 移动到 [col_5, row_5] 点3 由位置 [col_3, row_3] 移动到 [col_6, row_6] 由这3个点的位置变化可以得到 变化矩阵 M ———————————————— 版权声明本文为CSDN博主「Enzo 想砸电脑」的原创文章遵循CC 4.0 BY-SA版权协议转载请附上原文出处链接及本声明。 原文链接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 图像裁剪、调整大小、旋转、透视三  c#OpenCV 读取、显示和写入图像二 c# OpenCV安装一
http://www.ihoyoo.com/news/8544.html

相关文章:

  • 有哪些网站可以自己做加视频济南网站开发设计
  • 做网站友情链接互换表白网址在线制作平台
  • 如何根据网址攻击网站做外卖在哪个网站做好
  • 桂林做网站的公司有哪些网站设计建设收费标准
  • 企业网站维护是指重庆建一个网站大概要多少钱
  • 广西企业建站怎么卸载2345网址导航
  • 大同推广型网站建设wordpress设置访问密码
  • 快速搭建网站模板个人备案后做淘客网站
  • 网站上的地图导航怎么做的广州网站推广策划案
  • 北京做网站电话现在流行用什么语言做网站
  • 中国网站用Cn域名网页设计培训班哪里好
  • 建立网站对吗大学生网站作品
  • 如何做全景素材网站石家庄医院网站建设
  • 网站建设玖金手指谷哥四wordpress 百度百家
  • 公司怎么建设网站首页西安凤城二路网站建设
  • 南京住房和城乡建设部网站长春如何建立一个平台网站
  • 做任务的网站有哪些在线网站分析工具
  • 个人网站做多久有效果wordpress 美化 插件大全
  • 官网网站建设需求文档全网营销包括什么
  • 沙井品牌网站建设小程序源码网网盘
  • 怎么用 c文件做网站wordpress 和shopify
  • 驻马店制作网站的公司设计一个网站开发方案
  • 网站的建立怎么看网站是否安装百度商桥代码
  • wordpress post_type如何优化网页加载速度
  • 东莞网站建设58三门峡高端网站开发
  • 网站做网站广告wordpress怎么添加连接
  • 济宁做网站的公司公司网页动画
  • 深圳网站搭建价格网站建设后期维护
  • 网站开发零基础培训学校泊头网站建设价格
  • 网站上的图片一般多大做网站一个月30ip