android自动标注,分享一个自己做的Android图片标注工具

简介

什么是图片标注?众所周知,机器学习是需要数据支撑的,比如你想让机器认识图片中的猫,就得把很多已经有答案的图给这个机器看,就像我们看例题一样。而图片标注就是给图片这个例题加上答案。比如我们要框出图片中猫,最后把坐标以及原图打包作为一个学习样本,就可以给模型食用啦。

这款控件就完成的这样的一件事,支持对图片进行画框、调整、贴上标签等,并且框不局限于矩形,可以扩展。

效果预览

可以在我的项目主页预览效果图,这里图片大小有限制,压缩了效果不好。

也可以直接clone下整个项目运行sample查看效果。

添加到你的项目

第一步 在你的根项目的build.gradle中repositories末尾添加:

allprojects {

repositories {

...

maven { url 'https://jitpack.io' }

}

}

第二步 添加依赖

dependencies {

implementation 'com.github.SirLYC:ImageLabelView:{latest version}'

}

在代码中使用

第一步 添加到你的布局

第二步 把一张图片设置进去(通过bitmap形式)

类似于ImageView的CenterInside表现。Bitmap可以为空,但是会清空之前的所有标签。

val bitmap: Bitmap? = ... // download or read from disk

label.setBitmap(bitmap);

第三步 在4种模式下完成工作

PREVIEW

这是默认模式。每当你设置一个新的bitmap时都会改变到这个模式。在这个模式下,你可以移动或放大缩小图片。

DRAW

在这个模式可以画框。比如矩形框,对角就是你按下和抬起时的位置。手指抬起后,会选中这个框进入SELECT模式。

UPDATE

在这个模式可以改变框的大小或者位置。可以拖动一个角或者一条边改变大小,或者按到一个标签中央移动它。

SELECT

在这个模式下可以通过点击或长按选中一个标签。标签选中后可以用如下代码获取:

label.selectingLabel()

这个模式一般用于处理messaege属性的输入或者删除它。

Step4: 导出数据

拿到Label的引用后直接调用它的 getData() 方法和 message 属性获取信息。

待完成/修复

[ ] 配置信息改变时会丢失状态

[ ] 圆形的框

[ ] 三角形的框

[ ] 其他多边形...

感谢大家的支持!再次贴上项目地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值