首页 > 编程语言 >OpenCV-图像读写(java版)

OpenCV-图像读写(java版)

时间:2022-10-12 10:06:24浏览次数:62  
标签:java String img 读写 System OpenCV 图像 imread Mat

@​​TOC​

图像读写

Imgcodecs类中提供了图像的读写方法。使用 imread()函数读取磁盘中的图像;使用 imwrite()函数将图像写入磁盘中

以下图为例演示。​​(图片来源网络)​

OpenCV-图像读写(java版)_函数返回

1.imread()

​Mat imread(String filename, int flags)​​ imread()函数返回的是 Mat 对象,如果读取文件失败,则会返回一个空矩阵

public static void main(String[] args) {
String libraryPath= System.getProperty("user.dir")+"\\lib\\opencv_java460.dll";
System.load(libraryPath);
Mat img= Imgcodecs.imread("sl.jpg",0);
if (img.empty()){
System.out.println("文件为空");
}else {
HighGui.imshow("img",img);
HighGui.waitKey(0);
}

}

运行效果如下:

OpenCV-图像读写(java版)_函数返回_02

在 imread()函数中,flag 参数值有三种情况:

1️⃣ flag>0,该函数返回 3 通道图像,如果磁盘上的图像文件是单通道的灰 度图像,则会被强制转为 3 通道;

2️⃣ flag=0,该函数返回单通道图像,如果磁盘的图像文件是多通道图像,则 会被强制转为单通道;

3️⃣ flag<0,则函数不对图像进行通道转换。

2.imwrite()

​ imwrite(String filename, Mat img)​

将图像写入磁盘中

public static void main(String[] args) {
String libraryPath= System.getProperty("user.dir")+"\\lib\\opencv_java460.dll";
System.load(libraryPath);
Mat img = Imgcodecs.imread("sl.jpg",0 );
//写图像
Imgcodecs.imwrite("sl_write.jpg",img);
HighGui.imshow("img",img);
HighGui.waitKey(0);
}

结果

OpenCV-图像读写(java版)_读取文件_03

标签:java,String,img,读写,System,OpenCV,图像,imread,Mat
From: https://blog.51cto.com/lvyq/5748909

相关文章

  • OpenCV-视频读写(java版)
    @​​TOC​​​​​OpenCV2中提供了两个类来实现视频的读写。读视频的类是​​VideoCapture​​,写视频的类是​​VideoWriter读视频VideoCapture既可以从视频文件读取图......
  • javaDoc命令
      packagecom.dang.www;/***@authordangchan*@version1.0*@since1.8*/publicclassDoc{Stringname;/***@authordangchan*@paramname......
  • 备战面试day02--java虚拟机
    jvm内存模型主要分为运行时区域和非运行时区域                 1.1非运行时区域类加载系统......
  • AHK调用opencv(四)播放视频文件
    本节内容对open()的另一种使用参数做了研究,注意这里open()里的参数是文件名。因为视频文件不同于相机,视频文件有时长,所以死循环中需要一个判断,判断视频帧是否结束,如果结束......
  • Java对ip地址校验
    importjava.util.Scanner;publicclassip_test{/**IP的格式:(1~255).(0~255).(0~255).(0~255)**/publicstaticvoidmain(String[]args){......
  • 【idea】将java项目打成jar包
    一、idea将java项目打成jar包(非maven方式)jar(JavaArchiveFile),翻译过来就是java的档案文件,它其实也类似于我们windows下的zip文件,唯一的区别就是在JAR文件的内容中......
  • Java安全之Webshell免杀
    Java安全之Webshell免杀当遇到文件上传时,如果网站存在查杀软件,我们上传的一句话木马会被直接秒杀,这时候就需要做一下免杀,绕过查杀软件的检测。思路我的想法是先拆分,然后......
  • Java 手动显示调用validate的实体属性验证
    importorg.springframework.util.CollectionUtils;importjavax.validation.ConstraintViolation;importjavax.validation.Valid;importjavax.validation.Validati......
  • Java自学小白——IO流
    一、文件基础知识Java对文件的操作是通过IO流来实现的,想要了解IO流,就得先学习Java的File类                    I/O......
  • Java小白学习笔记——反射
    快速入门一,反射概述反射机制       上述程序的返回值  反射获取对象 方式一在编译阶段使用,一般多在通过读取配置文件获取方式二在加载......