java - 使用openCV裁剪图像区域(java)

标签 java android image opencv crop

我用 openCv 检测到图像中的一个区域(矩形),并且存储了矩形的 4 个点及其坐标。

我想在这个区域裁剪原始图像。

我有:

Mat image_original; 
Point p1,p2,p3,p4;
Mat image_output;

我该怎么做? 谢谢!

最佳答案

Mat image_original; 
Point p1,p2,p3,p4;
Rect rectCrop = new Rect(p1.x, p1.y , (p4.x-p1.x+1), (p4.y-p1.y+1));
Mat image_output= image_original.submat(rectCrop);

这是根据您的要求裁剪图像的代码。我假设Point p1是裁剪矩形的左上角,Point p4是底部- 裁剪矩形的右上角,因为您没有提及有关它们位置的任何信息。

关于java - 使用openCV裁剪图像区域(java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37946482/

相关文章:

c# - 在没有运行 Windows UI 的情况下将窗口捕获为图像

java - 如何在循环内初始化数据字段?

java - RecyclerView 不滚动 FirebaseUI

java - 尝试在空对象引用上调用虚拟方法 'java.lang.String java.lang.Integer.toString()'

java - 在 android 中使用字符串的数字选择器显示完整的文本值

javascript - 使用css设置背景的宽度和高度

java - 如何在 Spring Boot 中更新单个表列而不更新其余属性?

java - 使用复选框允许用户保存 TextView 和编辑 View 中的值,以便在重新打开应用程序时立即看到它们。

android - 如何检查 Firebase 数据类 Android 中是否已经存在一个值

php - ffmpeg 从 mp4 文件导出的 UnClear 图像