You are on page 1of 3

The Import acquisition Page

# For this action of importing we need a json file. It has a standard structure and some fields are written
in a certain format.

# It has links to additional raw files (*ts files, *between files) that are part from that acquisition and that
will be programmatically downloaded from the server

The page for Checking the Imported File

# Here, some of the most relevant fields within the json file are displayed in order to let the user double
validate that it is the desired file with the correct dates for the acquisition

# Thus, the user can create the acquisition validation tasks or he can return to the uploading page if
something is not right in the file (or the file itself).

The Task Created Confirmation Page

# Here the information about the created task are displayed and what are the files associated with it.

# Currently, a single task can be created from a json file, but it can be scaled to create as many tasks as
how many raw movie links (with the *bw extension) are present in the json file.

In the Validation acquisition page

# We can see all the acquisition validation tasks regardless of their status.

## Currently we defined 3 cases of action for this type of tasks.

If it has the Finished Status and the associate movie is validated, the task can be exported in a json
format.

And if it has the New Status or the Finished Status and the associate movie is invalidated, the task can be
validated or re-validated.

The Task Validation Page

# Here some minimal data about the task are listed.

# We can iterate through the *bw file / movie frame by frame or skip 30 frames at a time
# The cancel button redirects us to the previous validation page
# After a task is validated or invalidated, his status is set on Finished and the Movie is created for the bw
file. If the movie has been seted as valid, the associate task can be exported in the json format, else the
tehnician/user can return to restart validation process if he consider that it would be a valid movie.

In this demo I will show the import acquisition part and the validation acquisition feature. Actually the
previously presented flow.

# First let's import an acquisition.


We iterate through the available json files and choose one. Upload it.

And now here we can review that we imported the file for the desired acquisition.
Yes it is good. Now press the create button.

The acquisition validation task is now created – the raw file ( with *bw extension) is on the server, We
can go to the next natural step, to validate it.

Here in the validation page we can choose different action based on the task status and movie's validity.

We want to validate the last create task, here task number __ (sixteen, fifteen)

Reading the scenario description of the task (the subject is wearing white mask and eye glasses), we
cant see these elements in the movie, and we can conclude that the raw movie is an invalid one. Maybe,
before pressing the invalidate button, we should iterate through the majority of frames to see if the
elements are introduced from a certain point.

But, in this movie the subject isn't wearing white mask and neither eyeglasses. Let’s set it properly. We
press the invalidate button.
Now the task is finished, the movie is marked at not valid. Like is written on this page, or like we can see
in the Validation Page.

In the period of time remained after mid presentation we encountered few problems.

)))The first one was when we wanted to implement some pages with certain input elements that have a
predefined behaviour.
The solution was of using input forms from HTML and performing additional checks programmatically,
to ensure the strengthness of HTML input elements for unpropper input values.

))) The toughest problem was to create a horizontally filtering menu (practicall two listboxes for the
fields that can have multiple values for it (like a user can have multiple groups to be part of) .
The html multiple selector element made this menu to be visually correct. But there were some corner
cases when after pressing the save/submit button the data were not sent correctly to the view function.

The solution was to create a javascript method to be attached on move buttons and submit buttons, that
continuously updates the lists.

))) The last problem was faced when we wanted to install / to start the project from scratch on the local
computer.

Even if we can create the virtual environments with the setup.py file , or update different package
versions, the running of the project raise some errors no matter which package versions are installed (or
if they were installed programatically or manually).

The solution that let us continue implementing the data management application was to use existing
environments from other branches created on the local computer (for running the application or
installing new required packages).

The goal of the application was to create a web app. for data management that will automate some of
the flow processes that actually are done manually. Automatizing this reduces the probability of human
error occuring at certain phases. It also make some process to be done faster. The data will be accessible
and manageable in an easier way.

You might also like