JavaCV实现照片马赛克效果
更新时间:2022年1月22日 12:40 点击:375 作者:青空coding
前言
青空最近在逛一些社区的时候发现了有很多图片是像素图,感觉挺好玩的。正巧最近自己在学习JavaCV,所以在这里给大家演示一下如何使用JavaCV来处理像素图。
像素图其实有点类似于类似于打马赛克的功能。通过像素的变化,演示一个像素画的功能。像素画在 NFT 中特别的流行。
准备工作
我们先引入 JavaCV 的依赖库
<dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.5.6</version> </dependency>
这种方式引入,会把javacv 所有包含的都引入进来。平时测试使用都时候,可以这样操作。但是到真实项目中,还是需要做一次精简才行。
另外我们准备了一个图片。
代码实现
读取文件
val path ="path/to/img/" val img = opencv_imgcodecs.imread(path + "meinv.jpeg")
获取原图的像素宽高,然后进行像素比缩放。
val size = img.size() val height = size.height() val width = size.width() val pixelSize = 10 val newWidth = width / pixelSize val newHeight = height / pixelSize
根据设定的像素比, 对原图进行缩小,再放大的两次 resize 操作。这样就完成了像素图的处理。
val imgTmp: Mat? = null opencv_imgproc.resize(img, imgTmp, Size(newWidth, newHeight),0.0, 0.0, opencv_imgproc.INTER_NEAREST) opencv_imgproc.resize(img, imgTmp, Size(width, height),0.0, 0.0, opencv_imgproc.INTER_NEAREST)
那我们来看下处理过之后的图像效果吧
效果看起来还可以,图片颜色单一图片尺寸稍微小一些的效果会好很多。
完整代码
import org.bytedeco.opencv.global.opencv_highgui import org.bytedeco.opencv.global.opencv_imgcodecs import org.bytedeco.opencv.global.opencv_imgproc import org.bytedeco.opencv.opencv_core.Mat import org.bytedeco.opencv.opencv_core.Size fun main(args: Array<String>) { val path = "path/to/img/" val img = opencv_imgcodecs.imread(path + "meinv.jpeg") val size = img.size() val height = size.height() val width = size.width() val pixelSize = 10 val newWidth = width / pixelSize val newHeight = height / pixelSize val imgTmp: Mat? = null opencv_imgproc.resize(img, imgTmp, Size(newWidth, newHeight), 0.0, 0.0, opencv_imgproc.INTER_NEAREST) opencv_imgproc.resize(img, imgTmp, Size(width, height), 0.0, 0.0, opencv_imgproc.INTER_NEAREST) opencv_highgui.imshow("meinv", img); opencv_highgui.waitKey(0) }
到此这篇关于JavaCV实现照片马赛克效果的文章就介绍到这了,更多相关JavaCV内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!
原文出处:https://blog.csdn.net/wbf1013/article/details/122615000
相关文章
- 今天小编在这里就来给美图秀秀的这一款软件的使用者们来说下究竟该怎么给照片天空加蓝天白云的教程,各位想知道具体制作步骤的,那么下面就来跟着小编一起看看吧。 ...2016-09-14
- photoshop软件是现在很多人都会使用到的,很多人会使用ps软件处理照片。那么photoshop怎么对照片祛痘磨皮呢?不知道的下面我们一起来看看。 原图  photo...2017-07-06
- 这篇文章主要介绍了基于Python获取照片的GPS位置信息,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-04-22
- PS给绿色树林人物照片添加金色逆光效果文章中,将会教大家如何添加逆光效果,想要学习该技能的同学请看下文介绍。 素材图片有点逆光,只是背景比较杂乱,效果不是很好...2016-12-15
- 这篇文章主要介绍了微信小程序 获取相册照片实例详解的相关资料,需要的朋友可以参考下...2016-11-22
- 这篇文章主要介绍了关于webview适配H5上传照片或者视频文件的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
- 有时我们会不小心将手机中的照片给删除掉,当再次查看该照片时发现为时已晚。那么安卓手机上误删的照片该如何找回?下面小编就为大家介绍照片被误删找回的三个方法,真的很实用,一起来学习吧...2017-07-06
- 这篇文章主要介绍了Python识别处理照片中的条形码,帮助大家更好的利用python处理图片,提高办公效率,感兴趣的朋友可以了解下...2020-11-16
- 为了让照片看上去很仙,可以添加一些云雾,给人一种人间仙境的感觉。具体该怎么添加呢?下面我们就来看看详细的教程。 1、打开所用素材(美女和烟雾)2、在的烟雾的图片中,...2017-01-22
- 经常可以看到一些情侣拍一些亲密的照片,如果哪天照片被删除了,有什么方法可以恢复呢?其实很简单的,下面就教大家个不错的方法可以快速的找回删除的图片,有此需求的朋友可以参考下...2020-06-29
- 本篇教程给大家分享了ps是如何巧用图层叠加和滤镜快速把人物照片转变成素描画的,有兴趣的朋友可以来看一看。 最终效果:原图:主要过程:1、将照片素材拖拽进PS,同时CTRL...2017-07-06
- 你会黑白照片上色吗,今天小编带你用python来给黑白照片上个色,这里我们借助百度AI开放平台的“黑白图像上色”接口,仅需二十行代码即可实现,感兴趣的朋友来看看吧...2021-10-15
- 今天为大家分享Photoshop给婚纱照片制作出梦幻效果方法,这篇文章比较适合新手,简单易懂,下面请看详细的介绍。 Photoshop给婚纱照片制作出梦幻效果教程:效果图:画面呈...2017-01-22
- 抽象艺术是指艺术形象较大程度偏离或完全抛弃自然对象外观的艺术表现形式,具有抽象艺术效果的图片显得“高大上”。本教程难度中等,制作出来的效果挺梦幻的。下面来看步...2017-01-22
- 如何把照片ps教程成唯美手绘美女效果 最终效果 ...2016-09-14
- 这篇文章主要为大家详细介绍了OpenCV实现马赛克和毛玻璃滤镜效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-04-25
- 利用ps教程把照片打造成粉色色调效果 效果图:...2016-09-14
- 夏季色最大的特点就是画面中有灿烂的阳光。没有光线的图片需要想办法加上去,主色可以用一些清爽的青蓝色或黄绿色。 原图 <...2016-09-14
- 怎么ps教程淡蓝色的照片效果 最终效果 ...2016-09-14
- 原图: 效果: 一,打开原始图片素材,按ctrl + j将背景图层拷贝一层,按ctrl + shift + u去色,运行:滤镜 > 模糊 > 高斯模糊,设定值为4,确认后将图层混合模式改成“滤色&rdq...2016-09-14