java opencv resize
时间: 2024-01-30 11:12:20 浏览: 21
在Java中使用OpenCV进行图片的resize可以通过以下步骤实现:
1. 首先,确保你已经安装了OpenCV库并将其添加到Java项目中。
2. 导入必要的类和方法:
```java
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
```
3. 加载原始图片:
```java
Mat srcImage = Imgcodecs.imread("path/to/your/image.jpg");
```
4. 定义目标图片的宽度和高度:
```java
int targetWidth = 800;
int targetHeight = 600;
```
5. 创建一个新的Mat对象来存储resize后的图片:
```java
Mat resizedImage = new Mat();```
6. 调用OpenCV的resize函数进行图片的resize:
```java
Imgproc.resize(srcImage, resizedImage, new Size(targetWidth, targetHeight));
```
7. 保存resize后的图片:
```java
Imgcodecs.imwrite("path/to/save/resized/image.jpg", resizedImage);
```
下面是一个完整的示例代码:
```java
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class ImageResizeExample {
public static void main(String[] args) {
// 加载OpenCV库
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
// 加载原始图片
Mat srcImage = Imgcodecs.imread("path/to/your/image.jpg");
// 定义目标图片的宽度和高度
int targetWidth = 800;
int targetHeight = 600;
// 创建一个新的Mat对象来存储resize后的图片
Mat resizedImage = new Mat();
// 调用OpenCV的resize函数进行图片的resize
Imgproc.resize(srcImage, resizedImage, new Size(targetWidth, targetHeight));
// 保存resize后的图片
Imgcodecs.imwrite("path/to/save/resized/image.jpg", resizedImage);
}
}
```