The MySQL and SQLite databases have the same tables and almost the same structure. For MySQL, the session tables will be in the database with a foreign key to the session entry, while for SQLite the session results will be stored in a separate database for each session.


NOTE: The table names are all lowercase versions of the headings above them.

Main

The following tables will be in the main database for SQLite.

Users

Column

Notes

id

Auto-incrementing primary key

username

Must be unique

password

Stored as BCrypt hash

permissions

Must be either "Developer", "Operator", or "Kiosk", invalid values will get Kiosk permissions

active


Sessions

Column

Notes

id

Auto-incrementing primary key

name

Must be unique

user

The user that started the session, references users.id

project

Path to the project file

type

A combination of "Correction", "Classification", "Segmentation", and "Regression", separated by " + "

start

Time when the session was started

end

Time when the session was ended

frames

The number of processed frames

Fields

Custom fields defined by the developer.


Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

name


value


Log

Column

Notes

id

Auto-incrementing primary key

message


user

The user to which the message relates to, references users.id

session

The session to which the message relates to, reference sessions.id

timestamp


Version

Internal, used to keep track of changes to the database structure, modifying it may make the database unusable for perClass Mira.


Column

Notes

id

Auto-incrementing primary key

number

Version number

time


Session

The following tables will be in the session specific database for SQLite.


NOTE: The SQLite session specific database also includes the sessions and fields tables like shown above. But it will only contain the rows of that specific session, where the session ID is matching the one in the main database.

Classes

The classes from the project the session was started with.


Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

index


name


color

The color as ARGB integer

foreground


pixels

The total amount of pixels of this class

Variables

The regression variables from the project the session was started with.


Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

index


name


Objects

Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

index


class

References classes.id

size

Size in pixels

x

Bounding box X

y

Bounding box Y

width

Bounding box width

height

Bounding box height

Regression

Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

object

References objects.id

variable

References variables.id

value


Cubes

The cubes that were saved when an annotation was saved, or the saved images in image capturing mode.


Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

name


Annotations

Column

Notes

id

Auto-incrementing primary key

session

References sessions.id

cube

References cubes.id

x

Bounding box X, relative to cube

y

Bounding box Y, relative to cube

width

Bounding box width

height

Bounding box height

text