In the 1/16 user study, we saw some cases where the deepest point of the fork's "into" motion was around 1 inch from the top of the food. Our hypothesis is that part of the fork (and/or its shadow) was in the segmented mask, skewing the average depth. Thus, this PR does two things:
Replaces average depth with median depth.
Removes points of depth 0 from the mask (indicative of a shadow in the depth camera)
Testing procedure
In-person:
[x] Test with several food items, in several different locations around the plate. For some of them, have them close to and/or overlapping with the fork. Verify that it acquires the food correctly.
[x] Also, verify that the perceived depth is correct (easiest way to do so imo is with the web browser's console logs).
Before opening a pull request
[x] Format your code using black formatterpython3 -m black .
[x] Run your code through pylint and address all warnings/errors. The only warnings that are acceptable to not address is TODOs that should be addressed in a future PR. From the top-level ada_feeding directory, run: pylint --recursive=y --rcfile=.pylintrc ..
Description
In the 1/16 user study, we saw some cases where the deepest point of the fork's "into" motion was around 1 inch from the top of the food. Our hypothesis is that part of the fork (and/or its shadow) was in the segmented mask, skewing the average depth. Thus, this PR does two things:
Testing procedure
In-person:
Before opening a pull request
python3 -m black .
ada_feeding
directory, run:pylint --recursive=y --rcfile=.pylintrc .
.Before Merging
Squash & Merge