Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Person registration #235

Merged

Conversation

alex-mitrevski
Copy link
Member

@alex-mitrevski alex-mitrevski commented Aug 18, 2020

Summary of changes

This PR first of all adds a new mdr_utility_tasks metapackage under mdr_scenarios for small utility tasks that a robot should perform (e.g. gathering information to populate its permanent knowledge base or collecting data for learning)

The actual purpose of the PR is the definition of a task in which a robot collects images of a person's face and stores those in its knowledge base. For this, a package mdr_util_register_person under the mdr_utility_tasks has been added. In this task, a robot asks a person to stand in front of its camera and then takes three pictures of them - one with the person facing straight towards the robot, one facing a bit to the left, and one facing a bit to the right. The face embeddings from all three views are then stored in the robot's permanent knowledge base.

The PR also resolves a bug in the find_people action (introduced with 082db55), namely detected people were not added to the list in the PersonList message if a face could not be detected.

Design decisions

Currently, the name of the person is not collected in the task. One option would be to use speech input for this, but the problem we've encountered before is that international names aren't recognised reliably (hence we've decided to use a spreadsheet for entering the name in the lab manager scenario). For now, I would leave this feature out; for simplicity, names can be changed by editing the database entries manually (this should be done after the task is over; otherwise, the same person entry will be modified the next time the task is performed).

Tests to verify the functionality

I have performed some tests with our HSR, where the robot was learning my face. The tests included both the nominal case, where I was standing in front of the robot so that it could see my face, as well as cases in which the face was not visible, so the detection had to be repeated.

@alex-mitrevski alex-mitrevski changed the title Person registration WIP: Person registration Aug 18, 2020
To use the SaySentence state correctly, I am now passing just one
sentence to the state instead of two
@sonarcloud
Copy link

sonarcloud bot commented Aug 18, 2020

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities (and Security Hotspot 0 Security Hotspots to review)
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@alex-mitrevski alex-mitrevski changed the title WIP: Person registration Person registration Aug 18, 2020
@alex-mitrevski alex-mitrevski marked this pull request as ready for review August 18, 2020 16:22
@alex-mitrevski alex-mitrevski merged commit df4a18f into feature/ieee_video_challenge Aug 18, 2020
@alex-mitrevski alex-mitrevski deleted the feature/person-registration branch August 18, 2020 16:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant