这篇文章主要介绍了Android OpenCv4如何绘制多边形,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
集成非常简单,直接按Module形式导入 sdk 即可
官方地址,打开选择Android
下载完成解压以后直接导入OpenCV-android-sdk
目录下的sdk
文件即可。
方法
/**
img 输入图像
pt1 左上起点
pt2 右下终点
color 绘制直线的颜色
thickness 直线宽度。若为负值,表示填充
lineType 边界的类型,可取值为FILLED ,LINE_4 ,LINE_8 和LINE_AA
shift 点坐标中的小数位数
**/
public static void rectangle(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int lineType, int shift)
使用
private void renderRectangle(Mat source) {
Point leftTop = new Point(100, 100);
Point rightBottom = new Point(500, 300);
Imgproc.rectangle(source, leftTop, rightBottom, new Scalar(0.0, 0.0, 255.0), 10);
showMat(source);
}
private void showMat(Mat source) {
Bitmap bitmap = Bitmap.createBitmap(source.width(), source.height(), Bitmap.Config.ARGB_8888);
Utils.matToBitmap(source, bitmap);
mIvSrc.setImageBitmap(bitmap);
source.release();
}
下面几个可以自己试试
/**
img 输入图像
pt1 起点
pt2 终点
color 绘制直线的颜色
thickness 直线宽度
lineType 边界的类型,可取值为FILLED ,LINE_4 ,LINE_8 和LINE_AA
shift 点坐标中的小数位数
**/
public static void line(Mat img, Point pt1, Point pt2, Scalar color, int thickness, int lineType, int shift)
/**
img 输入图像
pts 多边形端点坐标 list<point>
isClosed 是否闭合
color 绘制直线的颜色
thickness 直线宽度
lineType 边界的类型,可取值为FILLED ,LINE_4 ,LINE_8 和LINE_AA
shift 点坐标中的小数位数
**/
public static void polylines(Mat img, List<MatOfPoint> pts, boolean isClosed, Scalar color, int thickness, int lineType, int shift)
/**
img 输入图像
center 圆心坐标
radius 圆半径
color 绘制直线的颜色
thickness 直线宽度 若为负值,表示填充
lineType 边界的类型,可取值为FILLED ,LINE_4 ,LINE_8 和LINE_AA
shift 点坐标中的小数位数
**/
public static void circle(Mat img, Point center, int radius, Scalar color, int thickness, int lineType, int shift)
/**
img 输入图像
center 椭圆心坐标
axes 椭圆长轴短轴半径
angle 椭圆旋转的角度
startAngle 椭圆弧起始角度
endAngle 椭圆弧终止角度
color 绘制直线的颜色
thickness 直线宽度 若为负值,表示填充
lineType 边界的类型,可取值为FILLED ,LINE_4 ,LINE_8 和LINE_AA
shift 点坐标中的小数位数
**/
public static void ellipse(Mat img, Point center, Size axes, double angle, double startAngle, double endAngle, Scalar color, int thickness, int lineType, int shift)
/**
img 输入图像
text 文字内容
org 文本字符串的左下角位置
fontFace 字体类型
fontScale 字体大小
color 绘制直线的颜色
thickness 直线宽度 若为负值,表示填充
lineType 边界的类型,可取值为FILLED ,LINE_4 ,LINE_8 和LINE_AA
bottomLeftOrigin 如果为true,则图像数据原点位于左下角。否则,位于左上角
**/
public static void putText(Mat img, String text, Point org, int fontFace, double fontScale, Scalar color, int thickness, int lineType, boolean bottomLeftOrigin)
Android是一种基于Linux内核的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。
感谢你能够认真阅读完这篇文章,希望小编分享的“Android OpenCv4如何绘制多边形”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。