-
Notifications
You must be signed in to change notification settings - Fork 643
Add computer-vision slug #2090
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
Add computer-vision slug #2090
Conversation
Right now the closest thing in the list to computer vision is `science::robotics`. Computer vision algorithms are not always used for robotics. This slug also allows computer vision crates to be found easier instead of being lost among the other robotics crates.
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @smarnach (or someone else) soon. If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes. Please see the contribution instructions for more information. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Our current categories mostly seem a lot broader than "computer vision", so I'm not sure this deserves a category of its own. Crates can also be browsed by keyword, e.g.
We don't really seem to have a benchmark to decide what should constitute a category, so I'll consult with the team and get back to you.
src/boot/categories.toml
Outdated
@@ -80,6 +80,12 @@ description = """ | |||
Algorithms for making data smaller.\ | |||
""" | |||
|
|||
[computer-vision] | |||
name = "Computer Vision" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To be consistent with the other category names, the "v" in "vision" should be lower case.
@vadixidav do you know how many crates would fit into this category today? |
One alternative could be to put the |
I'm not convinced this deserves a separate category yet. We already have a few rather specialized ones like "Text editors", but the vast majority of categories is more general. I'd be reluctant to add another quite narrow one. I'll leave this open for a while to see who else wants to chime in. |
What do you think about a top-level "machine learning" category (and remove the mention of "machine learning" from the description of the science category) with a "computer vision" subcategory? |
@carols10cents So far almost of the crates we have made would not fall under machine learning. Most of them are related to solving or iteratively improving camera or 3d point positions and camera parameters based on points detected and matched with other crates. For instance, most of the functionality in OpenCV is not related to machine learning. Additionally, OpenMVG, which is where many of our ports are sourced from, doesn't utilize any machine learning. Although machine learning and computer vision have started to overlap greatly in the last several years, I still wouldn't say it falls under machine learning. I feel like computer vision crates that relate to machine learning are more likely just to be considered "machine learning" crates anyways. Perhaps my view is skewed though, as I am not a machine learning specialist, so I am more focused on the other parts of computer vision. We should probably get the opinion of a second person, at least. |
So, it doesn't seem there is much activity here. I think what we should do is agree upon what slug would be a good fit for different computer vision crates. Some are related to image processing. This might involve, for instance, the Canny edge detector, denoising, gaussian blur/rescale, and other image operations. The closest category for these kinds of crates seems to be the Some are related to photogrammetry & multi-view geometry. This will involve crates such as There are also crates that do operations on images to prepare them for some of these processes. This would be, for instance, image undistortion. For instance, here is an OpenCV tutorial on this topic in OpenCV with Python. I don't know which category these go into, but the You also have depth map estimation. This is related to robotics in some cases, so it could go in that slug, but sometimes it is not. Python OpenCV tutorial on this topic is here. I think, at present, this would best go under Finally, there are the most well-known of all computer vision tasks: convolutional neural networks. They have made a large impact on modern society, but I would argue that since traditional machine learning frameworks (Tensorflow, PyTorch, etc) include these networks as built-in primitives, there is little reason to create a category specifically for them. I have covered some of the largest components of computer vision here. I believe that while we may not create a
Does anyone have any other thoughts on this? I think we should create a direction for which categories things like this should go, particularly as Rust becomes more relevant in this field. |
@vadixidav I think you make a good case for adding this at the top level, and not under a new machine-learning category. I've added to the agenda for Friday to bring up with the team (since we discussed previously but missed this angle). |
@jtgeibel That is good to hear. It is difficult to find places for many of these crates. I appreciate the time spent discussing this issue in meetings. |
We discussed merging this yesterday, and this is good to go as-is. I should be able to deploy this in the next hour or 2. @bors r+ |
📌 Commit b25daa3 has been approved by |
Add computer-vision slug Right now the closest thing in the list to computer vision is `science::robotics`. Computer vision algorithms are not always used for robotics. This slug also allows computer vision crates to be found easier instead of being lost among the other robotics crates.
☀️ Test successful - checks-travis |
Deployed. This category should now be available to new publishes. |
Right now the closest thing in the list to computer vision is
science::robotics
. Computer vision algorithms are not always used for robotics. This slug also allows computer vision crates to be found easier instead of being lost among the other robotics crates.