Store filenames with emoticons: Difference between revisions

From LogicalDOC Community Wiki
Jump to navigationJump to search
No edit summary
Giuseppe (talk | contribs)
No edit summary
Line 1: Line 1:
You must have a MySQL 5.7-8/MariaDB database with utf8md4 settings
= Preparing a Dataset with Label Studio =


Since this is not a risk-free operation it is necessary to back up the database before proceeding.
This guide explains how to create an annotated dataset for YOLO training using Label Studio.


=== Update the configuration of LogicalDOC ===
=== Install Label Studio ===
First you have to add a couple of parameters to the jdbc connection url of LogicalDOC
 
# Shutdown LogicalDOC system service/daemon
Refer to the official installation guide:
# Locate the file '''context.properties''' in '''<LOGICALDOC_INSTALLATION_DIR>/conf'''
https://labelstud.io/guide/install
# Edit the file context.properties by adding a couple of parameters to the value of key jdbc.url
 
# Locate the key '''jdbc.url''' and add the parameters '''characterEncoding=utf8&allowPublicKeyRetrieval=true''' <br/><pre>e.g.: jdbc.url=jdbc:mysql://localhost:3306/logicaldoc?useSSL=false&characterEncoding=utf8&allowPublicKeyRetrieval=true</pre>
=== Enable Local File Storage ===
# Save the file and restart LogicalDOC system service/daemon
 
For large projects it is not recommended to upload images directly through the Label Studio interface.
 
To enable local file access, configure the following environment variables:
 
<pre>
LABEL_STUDIO_LOCAL_FILES_SERVING_ENABLED=true
LABEL_STUDIO_LOCAL_FILES_DOCUMENT_ROOT=/path/to/images
</pre>
 
Launch Label Studio:


=== Update the database schema ===
Connect to the database using mysql client
<pre>
<pre>
mysql -u root -p logicaldoc
label-studio start
</pre>
</pre>


Check the status of the charset settings are OK with the query below
=== Create a Project ===
<syntaxhighlight lang="SQL">
 
SHOW VARIABLES LIKE 'char%';
# Login to Label Studio
</syntaxhighlight>
# Click '''Create Project'''
# Enter a project name
# Configure the labeling interface
# Save the project
 
=== Import Images ===
 
# Open the project
# Click '''Import'''
# Select '''Local Storage'''
 
When importing images, choose '''Files''' as the import method.
 
Unlike CVAT, Label Studio creates one task for each imported document image.
 
[[File:LabelStudio-import-method.png|thumb|600px|center|Selecting the Files import method]]
 
=== Annotate Documents ===
 
# Open a task
# Select a label
# Draw a bounding box around the target area
# Save the annotation
 
Example labels:
 
* Invoice Number
* Date
* Seller Name
* Buyer Name
* Total Amount
 
[[File:LabelStudio-annotation-example.png|thumb|600px|center|Example annotation]]
 
=== Export the Dataset ===
 
# Open the project
# Click '''Export'''
# Select the desired format
 
Supported formats include:
 
* YOLO
* COCO
* Pascal VOC
* CSV
 
For YOLO training, export the dataset in YOLO format.


[[File:Mysql8-charset-for-emoticons.png|360px|frame|center|MySQL queries to check charset and collation to store emoticons in LogicalDOC filenames]]
=== Dataset Formats ===


==== COCO ====


Here you should '''check that character_set_server is set to utf8mb4'''<br>
COCO is a JSON-based dataset format commonly used for object detection datasets.
If it is not set to utf8mb4 you must backup the database schema of logicaldoc and change that<br>
For more information [https://stackoverflow.com/questions/44591895/utf8mb4-in-mysql-workbench-and-jdbc utf8mb4 in MySQL Workbench and JDBC]


Execute the following SQL statements on the relevant field of the tables: ld_document, ld_version, ld_history
More information:
<syntaxhighlight lang="SQL">
https://docs.aws.amazon.com/rekognition/latest/customlabels-dg/md-coco-overview.html
ALTER TABLE
    ld_document
    CHANGE ld_filename ld_filename
    VARCHAR(255)
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;


ALTER TABLE
==== YOLO ====
    ld_version
    CHANGE ld_filename ld_filename
    VARCHAR(255)
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;


ALTER TABLE
YOLO datasets contain images and annotation files organized according to a predefined directory structure.
    ld_history
    CHANGE ld_filename ld_filename
    VARCHAR(255)
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;
</syntaxhighlight>


=== Add some files with emoticons in LogicalDOC ===
More information:
Now you can upload some files with emoticons from your desktop or just change the filename of a stored document adding an emoticon at the start of the File name
https://docs.cvat.ai/docs/dataset_management/formats/format-yolo/
[[File:Document-browser-files-with-emoticons.png|thumb|600px|center|The document explorer in LogicalDOC DMS 8.3.3 showing some files with emoticons]]


=== Additional information ===
==== YOLOv8 OBB ====


* [https://makandracards.com/makandra/2529-show-and-change-mysql-default-character-set Show and change MySQL default character set]
YOLOv8 OBB (Oriented Bounding Boxes) extends the standard YOLO format by supporting rotated bounding boxes using eight normalized coordinates.
* [https://makandracards.com/makandra/2531-show-the-character-set-and-the-collation-of-your-mysql-tables Show the character set and the collation of your MySQL tables]
* [https://stackoverflow.com/questions/1049728/how-do-i-see-what-character-set-a-mysql-database-table-column-is How do I see what character set a MySQL database / table / column is?]
* [https://stackoverflow.com/questions/39463134/how-to-store-emoji-character-in-mysql-database How to store Emoji Character in MySQL Database]
* [https://stackoverflow.com/questions/44591895/utf8mb4-in-mysql-workbench-and-jdbc utf8mb4 in MySQL Workbench and JDBC]

Revision as of 12:23, 23 June 2026

Preparing a Dataset with Label Studio

This guide explains how to create an annotated dataset for YOLO training using Label Studio.

Install Label Studio

Refer to the official installation guide: https://labelstud.io/guide/install

Enable Local File Storage

For large projects it is not recommended to upload images directly through the Label Studio interface.

To enable local file access, configure the following environment variables:

LABEL_STUDIO_LOCAL_FILES_SERVING_ENABLED=true
LABEL_STUDIO_LOCAL_FILES_DOCUMENT_ROOT=/path/to/images

Launch Label Studio:

label-studio start

Create a Project

  1. Login to Label Studio
  2. Click Create Project
  3. Enter a project name
  4. Configure the labeling interface
  5. Save the project

Import Images

  1. Open the project
  2. Click Import
  3. Select Local Storage

When importing images, choose Files as the import method.

Unlike CVAT, Label Studio creates one task for each imported document image.

File:LabelStudio-import-method.png
Selecting the Files import method

Annotate Documents

  1. Open a task
  2. Select a label
  3. Draw a bounding box around the target area
  4. Save the annotation

Example labels:

  • Invoice Number
  • Date
  • Seller Name
  • Buyer Name
  • Total Amount
File:LabelStudio-annotation-example.png
Example annotation

Export the Dataset

  1. Open the project
  2. Click Export
  3. Select the desired format

Supported formats include:

  • YOLO
  • COCO
  • Pascal VOC
  • CSV

For YOLO training, export the dataset in YOLO format.

Dataset Formats

COCO

COCO is a JSON-based dataset format commonly used for object detection datasets.

More information: https://docs.aws.amazon.com/rekognition/latest/customlabels-dg/md-coco-overview.html

YOLO

YOLO datasets contain images and annotation files organized according to a predefined directory structure.

More information: https://docs.cvat.ai/docs/dataset_management/formats/format-yolo/

YOLOv8 OBB

YOLOv8 OBB (Oriented Bounding Boxes) extends the standard YOLO format by supporting rotated bounding boxes using eight normalized coordinates.