Skip to content

Conversation

@Grymessa
Copy link
Contributor

@Grymessa Grymessa commented Nov 2, 2018

closes #456
closes #455
required by #360
required by #210

Depends on #138.
Very much a work in progress, this is basically a straight port from SubjuGator code. There are quite a few things that could improve this and cut down on file usage but as it stands this code functions and will return a classified image with bounding box.

TODO

  • Move all Utils and Protocs to a single directory
  • Have those Utils and Protocs take in arguments rather than being hard coded to look at a single file
  • Modify the perception scripts to return what we need for each task beyond just the bounding box.
  • Integrate with PCODAR.
  • Abstract to MIL Common

Currently I have another branch that was previously integrated with PCODAR before its completion. I'm not sure how well it will work now but I have a baseline at least for the integration.

@Grymessa Grymessa added the wip Work in progress (for reference, do not merge) label Nov 2, 2018
@Grymessa Grymessa self-assigned this Nov 2, 2018
@ghost ghost added the review label Nov 2, 2018
@kev-the-dev
Copy link
Contributor

kev-the-dev commented Nov 13, 2018

I think it is reasonable to target this for mil_common (save for the specific graphs/labelmaps for NaviGator's challenges).

The goal is to have a node that implements the vision_node interface and takes in the necessary configuration files (graph, label map) as parameters. All this nodes has to do is implement a callback function which takes in an image and returns a list of labeled boxes. It is a class, so you can override init for startup configuration (loading in the graph).

As for the large graph files, I recommend hosting them on plumbusi and using file(DOWNLOAD) in CMake to have it be downloaded on builds (verified with checksum) without having to have it as a git object.

@kev-the-dev
Copy link
Contributor

Another question: Is killing/restarting the processes the only solution for tensorflow's restrictions on multiple processes? For example, maybe you just need to close/restart the tensorflow session object? Worth a small amount of research to have a cleaner/faster solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

in progress wip Work in progress (for reference, do not merge)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Tensorflow classifer for dockshapes Add Tensorflow classifer for object classification

2 participants