simple-image-label
View English readme | 查看中文版readme
Simple image annotate use in JavaScript , support YOLO and VOC annotate point for object detection or deep-learning.
Preview
![preview](https://github.com/king2088/simple-image-label/raw/HEAD/preview.png)
Use in your project
Install simple-image-label
npm install simple-image-label -S
yarn add simple-image-label
pnpm add simple-image-label
Use in JavaScript
<div id="YourElementId"></div>
const SimpleImageLabel = require('../libs/simpleImageLabel').default
import SimpleImageLabel from '../libs/simpleImageLabel'
const simpleImageLabel = new SimpleImageLabe({
el: 'YourElementId',
imageUrl: 'yourImageUrl',
labels: [],
contextmenu: (e) => {
},
labelClick: (label) => {
},
error: (err) => {
console.log(err);
}
});
Use in vue3
<template>
<div id="YourElementId"></div>
</template>
<script setup>
import SimpleImageLabel from 'simple-image-label'
import { ref, onMounted } from 'vue';
const simpleImageLabel = ref(null);
onMounted(() => {
simpleImageLabel.value = new SimpleImageLabel({
el: 'YourElementId'
imageUrl: props.imageUrl,
labels: props.labels,
contextmenu: (e) => {
emit('contextmenu', e)
},
labelClick: (label) => {
emit('labelClick', label)
},
error: (e) => {
emit('error', e)
}
});
})
</script>
Use in React
import SimpleImageLabel from 'simple-image-label';
import img from './x.png'
import { useEffect } from 'react';
const ImageLabelComponent = () => {
let simpleImageLabel = null
useEffect(() => {
initSimpleDom()
}, [])
function initSimpleDom() {
simpleImageLabel = new SimpleImageLabel({
el: 'YourElementId',
imageUrl: img,
labels: [],
contextmenu: (e) => {
console.log(e);
},
labelClick: (label) => {
console.log(label);
},
error: (e) => {
console.log(e);
}
})
}
function getAllLabels() {
const labels = simpleImageLabel.getLabels()
console.log('labels', labels);
}
return (
<div>
<div id="YourElementId"></div>
<button onClick={getAllLabels}>Get all labels</button>
</div>
);
}
export default ImageLabelComponent;
Develop & Install & Run demo
Install
npm install
yarn
pnpm install
Run
npm run start
yarn start
pnpm run start
Build
npm run build
yarn build
pnpm run build
API
SimpleImageLabel options
Property | Type | Description |
---|
el | string | Html element id |
imageUrl | string | Image path |
labels | array | default labels |
readOnly | boolean | Enable/Disable read only mode |
contextmenu | function | right click event |
labelClick | function | left click event |
error | function | error event |
SimpleImageLabel function
function | params | Description |
---|
getLabels() | - | Get all labels |
activeLabel() | - | Get active label |
setImage(imageUrl) | imageUrl | Set image |
setLabels(labels) | labels | Set labels |
getImageInfo() | - | Get image width and height |
getCoordinate(label) | label | Get label coordinate |
getLabelsCoordinate() | - | Get all labels coordinate |
convertToYoloCoordinate(label) | label | Get label YOLO coordinate |
getLabelsYoloCoordinate() | - | Get all labels YOLO coordinate |
setLabelActive(uuid) | uuid | Set label active status by uuid |
clearAllLabelActive() | - | Clear active status |
removeAllLabels() | - | Remove all labels |
removeLabelByUuid(uuid) | uuid | Remove a label by uuid |
setLabelByUuid(uuid, attr) | uuid, attr | Set label attr by uuid. attr type is object |
getLabelByUuid(uuid) | uuid | Get label by uuid |
setReadOnly(readOnly) | readOnly | Set read only mode.readOnly type is boolean |