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

How to get segmentation label for each face in brep data? #99

Open
Achiga-wuhu opened this issue Oct 31, 2023 · 5 comments
Open

How to get segmentation label for each face in brep data? #99

Achiga-wuhu opened this issue Oct 31, 2023 · 5 comments

Comments

@Achiga-wuhu
Copy link

Achiga-wuhu commented Oct 31, 2023

Thank you very much for making the dataset publicly available! We appreciate your great efforts and excellent work. I had a few questions regarding the FUSION 360 Gallery dataset-segmentation dataset. When I looking into the segmentation data, I find there is some data with meaningless label, for example, in figure 1, the quadratic plane is labeled with "cut end". But there is no "cut side" face around it. Same situation in figure 2. I understand that this kind of label is possible when the user cut the whole face with a distance, but this kind of data will bring ambiguity to my task.
image
figure 1
image
figure 2

So I want to change the label, or generate some modeling sequence data and label the face by myself. May I ask the following questions?

  1. How could you label the face with its corresponding modeling sequence? Could you please roughly clarify the process?
  2. Is there any possible way to assign the face with its corresponding modeling sequence label with pyocc or occwl?

Thank you very much!!

@Achiga-wuhu Achiga-wuhu changed the title How to get segmentation label for each in brep data? How to get segmentation label for each face in brep data? Oct 31, 2023
@JoeLambourne
Copy link
Collaborator

Hi @Achiga-wuhu,

Thank you for your question. The labels are generated by the Fusion 360 application. If you open Fusion 360, create some simple modeling operations, then click on the features in the timeline at the bottom of the screen, the faces "created" or "modified" by that feature will turn blue. There are a few crazy cases which you need to be aware of.

  1. Truncation of a sold by a second operation. This looks to be the kind of thing happening in Figure 2. The entire green face may have been created by a feature which is not seen in the final geometry. Here is one way this could happen.

image

  1. Merging of faces. When faces are merged then it is very hard to know how to label the geometry. We basically assign the labels according to the faces which turn blue in Fusion. Here is an example of a merge which changes the geometry is a very unexpected way.

image

Sadly these corner cases can make it hard to interpret the labels with geometric reasoning. Hence there is a maximum accuracy which can be achieved on the dataset, depending on what information is fed to your algorithm.

While every care was taken to try to make the labels as sensible as possible, it was not feasible to arrive at anything better than what was published.

@Achiga-wuhu
Copy link
Author

Thank you for your explanation!! I try the process in Fusion360, but I am still curious about how to distinguish between the extrude side and extrude end. When the feature are selected, the body will turn blue but there is no difference between extrude end face and extrude side face. Is there any automatic process to achieve this? Thank you!

@JoeLambourne
Copy link
Collaborator

Sorry for the confusion. Sadly we didn't have permission to release the original Fusion data. If you are loading just an smt file then you will not have the timeline information. If you have a Fusion file which contains a timeline then you can use the python API

https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-62d132d3-2ae9-4d74-91d1-f2eee3d68f5d

The type of the operation is given by ExtrudeFeature.operation

Also see ExtrudeFeature.sideFaces and ExtrudeFeature.startFaces

@Achiga-wuhu
Copy link
Author

Thank you very much for your quick reply; your reply is very helpful to me! :)

@JoeLambourne
Copy link
Collaborator

Sorry that better labels were not possible. The dataset reflects the real complexity of commercial CAD data

@JoeLambourne JoeLambourne reopened this Oct 31, 2023
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

No branches or pull requests

2 participants