Image annotation tool is an application that lets the user load images from the user's local disk, view, resize and annotate them.
- FrontEnd: React bootstrapped with Create-React-App
- Backend: Node with Express
- DataBase: MongoDB
To run this on your local machine
- Download/Clone Repository
- Unzip
- Run
npm install
from unzipped root folder cd client
npm install
cd ../
npm start
Application will run on port 3000 and 5000
- To add/edit Image http://localhost:3000/
To change the database url
- Go to models/db.js from root folder.
- Modify url string to your DB connection URL.
- Start the application go to http://localhost:3000/.
- Click on choose file button then select a file from local storage and click ok.
- Selected Image will be displayed in the image display area.
- By default image will have dimensions of 200px X 200px.
- To resize image, input on the desired values in the provided input boxes labels with width and height.
- To add annotation text add the desired data in Annotation text input field and view the changes made on the image.
- To draw the Bounding boxes or region of interest on image by clicking on any point on the image and move the mouse on the image region and left click on the image again to select the rectangular area drawn.
- After all the edits click on the Add new button to add image and save changes to the Data base.
- Follow the above steps for as many images as required.
- If there are any images in database then by going to http://localhost:3000/ will display the latest uploaded image in image display area with recent changes made.
- To go to Previous images click on previous button left to image.
- To go to Next images click on Next button right to image.
- If any of the Previous/ Next buttons are disabled indicates you have reached the last/ first image.
- By cycling through the images you can edit the images as required and click the save changes button to save the changes to database.
Note: All the images can be found inuploads/
which will be in the root folder of the application
- The Bounding box data is formated as Json object and stored in data base. Go to images collection on your mongDB and view the Bounding box array to see the Bounding box regions.
- Bounding box Array will have
posInPixel
andposInPercent
objects which indicate the values of{x1,x2,y1,y2,height,width}
of the bounding box in pixels and percentages respectively.