最近因项目需要用到JavaCV,所以本小白在项目正式开始之前先学习了一下JavaCV,记录一下学习过程。附上第一个入门程序:
1.JavaCV简介
JavaCV 是一款开源的视觉处理库,使用它可以采集视频和音频,给这些音视频编解码,然后是用指定格式封装这些音视频数据,以及用什么协议传输
GitHub: https://github.com/bytedeco/javacv
2.maven引入jar包
<dependency> <groupId>org.bytedeco</groupId> <artifactId>javacv-platform</artifactId> <version>1.5.1</version> </dependency>
3.参考github给出的样本示例创建一个java程序
例子功能为:加载指定图片,高斯平滑转换以及图像的窗口内加载。
import org.bytedeco.opencv.opencv_core.Mat; import org.bytedeco.opencv.opencv_core.Size; import static org.bytedeco.opencv.global.opencv_highgui.imshow; import static org.bytedeco.opencv.global.opencv_highgui.waitKey; import static org.bytedeco.opencv.global.opencv_imgcodecs.imread; import static org.bytedeco.opencv.global.opencv_imgcodecs.imwrite; import static org.bytedeco.opencv.global.opencv_imgproc.GaussianBlur; /** * @ClassName Smoother * @Description * @Author maxiangzhao * @Date 2019/8/1 10:31 */ public class Smoother { public static void main(String[] args) { String fileName = "C:/Users/samurai/Pictures/ChMkJlbg2bOIJVsZAAQymyiIIs4AANIZwOWXv0ABDKz349.jpg"; //图像加载 Mat image = imread(fileName); if (image != null) { //高斯滤波器(GaussianFilter)对图像进行平滑处理。 GaussianBlur(image, image, new Size(3, 3), 0); //图像存储 imwrite(fileName, image); //窗口内显示图像 imshow("原始图像", image); //无限等待按键按下 waitKey(0); } } }
4.运行结果
程序运行后会弹出一个有指定图像的窗口。
原文地址:https://www.cnblogs.com/maxiangzhao/p/11282088.html
时间: 2024-10-15 00:58:03