cv图像翻转,EmguCV图像旋转「建议收藏」

iusethiscodeprivatevoidbutton12_Click(objectsender,EventArgse){Bitmapbm=newBitmap(pictureBox1.Image);Imageimg=newImage(bm);doublex=20;img.Rotate(x,newGray(255));pictureBox9.Image…

大家好,又见面了,我是你们的朋友全栈君。

cv图像翻转,EmguCV图像旋转「建议收藏」

i use this codeprivate void button12_Click(object sender, EventArgs e)

{

Bitmap bm = new Bitmap(pictureBox1.Image);

Image img = new Image(bm);

double x = 20;

img.Rotate(x, new Gray(255));

pictureBox9.Image = img.ToBitmap();

}

for image rotation

but it doesn’t work ,

why????

解决方案follow this link: http://www.emgu.com/wiki/files/1.4.0.0/html/ae9c1603-5135-1a2f-bd46-1dd736d4d7a8.htm[^]

You will see the Rotate method also has an argument called crop, set this argument false and all information of your image will be preserved.

I think your code should be changed into:

img = img.Rotate(x, new Gray(255),false);

Hope this will help you!

You may have to try this:

Image imgOut= img.Rotate(x, new Gray(255));

pictureBox9.Image= imgOut.ToBitmap();

I did not compile, even though i have emgucv on my machine, but I looked into their libray. I believe you should call like I said above.

see their implementation:

public Image WarpAffine(Matrix mapMatrix, int width, int height, INTER interpolationType, WARP warpType, TColor backgroundColor) where TMapDepth: new()

{

Image image = new Image(width, height);

//this call externs c function

CvInvoke.cvWarpAffine(base.Ptr, image.Ptr, mapMatrix.Ptr, (int) (interpolationType | ((INTER) ((int) warpType))), backgroundColor.MCvScalar);

return image;

}

Well, in case of “it doesn’t work”.

The problem is not that complected.

change this line

img.Rotate(x, new Gray(255));

to

img = img.Rotate(x, new Gray(255));

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127844.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 武侠世界2-try catch思考

    以前一直不知道trycatch具体应用到什么地方,之前待过的几家公司也看不到有类似的代码。从网上搜来的,描述trycatch优点有下面几点。1、把错误处理和真正的工作分开来;  2、代码更易组织,更清晰,复杂的工作任务更容易实现;  3、毫无疑问,更安全了,不至于由于一些小的疏忽而使程序意外崩溃了;  4、由于C++中的trycatch可以分层嵌套,所以它…

    2022年4月6日
    39
  • vsftpd安装包下载_vsftp搭建

    vsftpd安装包下载_vsftp搭建1、在profile文件中设置相关环境变量,允许使用代理上网,如果能联网则不需要配置主要为了能够使用第一种安装方式,如果不可行则可以使用第二种安装方式vi/etc/profile##在文件中加上以下配置信息,该配置为代理服务器地址,根据实际情况定义,该服务器地址必须可联网exporthttp_proxy=http://192.168.1.1:3128exporthttps_pro…

    2022年9月25日
    7
  • 苹果消息推送服务教程:第一部分(共2部分)

    苹果消息推送服务教程:第一部分(共2部分)这篇文章还可以在这里找到 英语LearnhowtoaddPushNotificationsintoyouriPhoneapp!这是iOS教程团队的MatthijsHollemans编写的一篇教程,MatthijsHollemans是一个经验丰富的iOS开发者和设计师。在iOS系统中,在后台运行的程序能够进行的操作是非常有限的。这种限制

    2022年7月12日
    28
  • Windows server 2012 R2 部署WSUS补丁服务[通俗易懂]

    Windows server 2012 R2 部署WSUS补丁服务[通俗易懂]一、WSUS安装要求1、硬件要求:对于多达13000个客户端的服务器,建议使用以下硬件:*4CoreE5-26092.1GHz的处理器*8GB的RAM2、软件要求:要使

    2022年7月2日
    60
  • SFTP指定端口号登陆——Linux学习

    SFTP指定端口号登陆——Linux学习sftp-oPort=60001root@192.168.0.254使用-o选项来指定端口号.-oPort=远程端口号

    2025年11月16日
    3
  • 一个普通java程序员的10年…泪奔 o(╥﹏╥)o o(╥﹏╥)o[通俗易懂]

    一个普通java程序员的10年…泪奔 o(╥﹏╥)o o(╥﹏╥)o[通俗易懂]大家好,我是曹尼玛,是一个很普通java程序员,今天看了下日期,转眼间,毕业9年,工作10年了,经历比较多,受伤比较多,收获比较多,改变也很多,对未来也有一些规划,对java新人有一些中肯的建议…过去10年的java人生回顾人生回顾,酸甜苦辣,蛋定就好…我的原生家庭和学业本D89年出生在沿海地区的一个普通农村家庭,一直供我上学,感恩父母!上的是农村小学,乡镇初中,乡镇高中,学习成绩中上,加上教育一般,以及我智商一般,即使努力,也就考了个破本科,选了个不用拼爹的专业-计算机科学与技术。.

    2022年6月10日
    89

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号