coco-annotator icon indicating copy to clipboard operation
coco-annotator copied to clipboard

COCO Annotator Next Generation

Open SixK opened this issue 1 year ago • 2 comments

Seem's JsBroks is not active anymore for years now. I can invite you to use my modernized version of COCO Annotator. We can call it COCO Annotator NG.

coco-annotator-ng

Consider this version as a beta version since produced annotations json files are not fully tested yet. Also Note you will have to migrate users password hash type due to Werkzeug 3 Breaking changes (You will find a script to help you in my project, see README.md file)

Features: - vue 3.2+ style code - upgraded python libraries versions - upgraded javascript packages - use Bootstrap5 - use pinia instead of vuex - use vite instead of vue-cli - added segment anything tool (SAM-HQ) to help to segment objects (1 click to segment an object) activate GPU (seem's this was not really activated even when using docker-compose.gpu.yml) - fixed some bugs and javascript errors - can use detectron2 models to help segment objects - maybe more ...

what features you will loose or bugs are introduced: - watchdog to detect new images has been disabled (this was freezing the application. This feature may be reactivated later) pinch zoom has been removed (need to find a library to replace and use a tablet to test it) - objects id are not the new ones when switching to next or previous images (need to click on an object to get ids updated) - exported json annotations files seem's ok but are actually not fully tested - need to remove dead codes - hope to not have more bugs and features removed...

Have a look at README.md file.

Hope some of you will be able to help me to improve and maintain this code.

Regards, SixK

SixK avatar Nov 12 '23 15:11 SixK

Abandoned projects make me have trust issues. But anw, really appreciate your ideas. We can try and move it when it's ready.

Question:

  1. Will the database I used previously be lost or can it still be used?

ariefwijaya avatar Nov 15 '23 15:11 ariefwijaya

As said in README.md of the project, python werkzeuk3 module introduced a breaking change on password hash type. You will have to migrate each user account one by one using provided python script "change_password_hash_type.py" And you can only do it if you know all users password. Here are variables to modify for each users in file: user="admin" password="admin"

Backup/export json files, backup dataset images and mongo database if you can before migrating

First start mongodb database starting coco-annotator normally: docker-compose up

then you can install necessary packages (yes werkzeug 2.0.3 to migrate, then you can install any version or remove package): pip install werkzeug==2.0.3 pip install pymongo

Then run this script for all users: python change_password_hash_type.py

Another way would be to export all datasets and json files, drop database, create users and import all datasets and json.

SixK avatar Nov 15 '23 23:11 SixK