美文网首页OpenCVForUnity学习教程
OpenCVForUnity_mat简单处理

OpenCVForUnity_mat简单处理

作者: ShawnWeasley | 来源:发表于2019-03-13 11:26 被阅读0次

前面是opencvforunity的一些简单入门例子的剖析,但是貌似后面的例子读起来有点困难了,因为一些方法越来越看不懂,所以另辟蹊径,从看opencv本身教学视频,然后在Unity端还原来理解。

首先本篇从最基础的开始:

我们新建一个场景,现在仅有相机和一个平行光,先不管。

准备工作:新建两个Plane,复位好,各自再新建一个材质球并且拖上去,把材质球的shader改成Unlit/Texture,左边的plane我们把OpenCVForUnity/Examples/Resources/lena这张经典图片拿出来贴上去作为对比。

然后调整一下距离,拉开错开即可,把角度调整为(-270,-90,90)。有强迫症的把相机位置的Y调成0,新开一个脚本,这里命名为Class1。完成后应该如下图:

准备工作

这样我们就准备好了左边的图为原图,右边的为我们输出后的图。

然后我们打开脚本,这里用到了Texture2DToMat Example例子中的主要脚本,首先,把例子中的代码照着写一遍:

Texture2DToMat Example

这里注释写的很详细了,不再赘述,头尾是opencv的log,可以不要。头文件引入不用讲吧?用自带的vs很方便,如下图,给实在不会引入头文件的小白复制用:

using OpenCVForUnity.CoreModule;

using OpenCVForUnity.ImgprocModule;

using OpenCVForUnity.UnityUtils;

using UnityEngine;

头文件引入

ok把脚本拖到空白的plane上,运行一下,图片加载成功了,这时候两边是一样的,如下图:

图片加载

ok,我们来简单改一下代码,先做一下如何改灰度图,灰度图是opencv中最常用的基础处理图像方法之一。

首先,我们把mat转Texture2D这部分代码之前的这部分空出来,新建一个mat,命名为grayMat,行列数用之前的即可,然后用Imgproc.cvtColor函数改成灰度图,记得把最后赋值的mat改成grayMat,代码如下:

灰度图

我们运行一下看看效果:

灰度图效果

好了本节先到这里 ,下节在本节基础上继续。

相关文章

  • OpenCVForUnity_mat简单处理

    前面是opencvforunity的一些简单入门例子的剖析,但是貌似后面的例子读起来有点困难了,因为一些方法越来越...

  • iOS换肤功能的简单处理框架

    iOS换肤功能的简单处理框架 iOS换肤功能的简单处理框架

  • 图片简单处理

    均属于笔记,仅供个人参考,有问题欢迎指正 public class BitmapUtil { //@# 图片加载工...

  • 简单处理图片

    图片格式 置灰:(人眼感知)float gray = 0.3 * color.r+0.59 *color.g+0...

  • 简单的事情简单处理

    前几天在朋友圈里看到L在卖丑桔,心想儿子爱吃啊,正好可以帮朋友走量,于是就下载了云集在她那买了5斤。 ...

  • 简单思维,注定简单处理

    没有思考叫做直觉 没有顾虑叫做由心 没有条件叫做爱了 没有关系叫做放过 简单问题简单处理 理性感性都是这样 哭过笑...

  • 【laravel:5.1】Pagination

    Paginator.php // 处理简单分页 LengthAwarePaginator.php // 处理复杂...

  • Spring异常处理

    1、配置简单异常处理器(此方法用于简单处理异常,即只能做跳转) 其中Key对应需要处理的异常种类,value对应需...

  • 用epoll实现http/https客户端

    主要流程: 如果处理简单的客户端请求单线程即可处理,此方法较为简单不做阐述。如果需要处理复杂的工作逻辑或者需要模拟...

  • 简单的愚人

    简单,喜欢简单! 简单,活得简单! 本身是个简单之人! 处理不来复杂之事! 化繁为简! 心之所向……

网友评论

    本文标题:OpenCVForUnity_mat简单处理

    本文链接:https://www.haomeiwen.com/subject/byhphqtx.html