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

你们有试过自己创建数据集吗?我该怎么使用自己的数据集? #14

Open
dreaming-huang opened this issue Jun 25, 2024 · 11 comments

Comments

@dreaming-huang
Copy link

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

@wyysf-98
Copy link
Owner

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

@LaFeuilleMorte
Copy link

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

如果有mesh了,如何去获取点云/法线/多视角图片呢

@dreaming-huang
Copy link
Author

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

@dreaming-huang dreaming-huang reopened this Jul 3, 2024
@wyysf-98
Copy link
Owner

wyysf-98 commented Jul 3, 2024

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

这里的确实是有很多细节,但是对于VAE的训练,破碎的网格对于质量的影响不大,反而是细节的丢失可能会影响性能。 整体而言,VAE的核心是压缩并重建模型,所以可以尝试一下用你提取到的数据。 渲染的多视角图像我们在val和data sample里面提供了,可以参考。

@Lanjiong-Li
Copy link

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

你好,可以问一下你用occupancy_network的环境吗

@dreaming-huang
Copy link
Author

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

你好,可以问一下你用occupancy_network的环境吗

先删除环境构建文件的torch、torchvision,安装其他的,然后安装cuda10.0,然后安装他推荐的torch和torchvision版本

@dreaming-huang
Copy link
Author

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

这里的确实是有很多细节,但是对于VAE的训练,破碎的网格对于质量的影响不大,反而是细节的丢失可能会影响性能。 整体而言,VAE的核心是压缩并重建模型,所以可以尝试一下用你提取到的数据。 渲染的多视角图像我们在val和data sample里面提供了,可以参考。

你们的rots.npy里的相机位姿似乎和实际渲染的图片不太一致,rots里有很多位姿是相同的,渲染图片里好像都是不同的位姿

@dreaming-huang
Copy link
Author

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

这里的确实是有很多细节,但是对于VAE的训练,破碎的网格对于质量的影响不大,反而是细节的丢失可能会影响性能。 整体而言,VAE的核心是压缩并重建模型,所以可以尝试一下用你提取到的数据。 渲染的多视角图像我们在val和data sample里面提供了,可以参考。

你们的rots.npy里的相机位姿似乎和实际渲染的图片不太一致,rots里有很多位姿是相同的,渲染图片里好像都是不同的位姿
oh 知道了 相同rot的四张图是同一个初始位姿的前后左右

@wyysf-98
Copy link
Owner

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

这里的确实是有很多细节,但是对于VAE的训练,破碎的网格对于质量的影响不大,反而是细节的丢失可能会影响性能。 整体而言,VAE的核心是压缩并重建模型,所以可以尝试一下用你提取到的数据。 渲染的多视角图像我们在val和data sample里面提供了,可以参考。

你们的rots.npy里的相机位姿似乎和实际渲染的图片不太一致,rots里有很多位姿是相同的,渲染图片里好像都是不同的位姿

这个·rots.npy是指的是物体的旋转,我们为了方便,并没有旋转相机。 麻烦可以检查一下

@dreaming-huang
Copy link
Author

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

这里的确实是有很多细节,但是对于VAE的训练,破碎的网格对于质量的影响不大,反而是细节的丢失可能会影响性能。 整体而言,VAE的核心是压缩并重建模型,所以可以尝试一下用你提取到的数据。 渲染的多视角图像我们在val和data sample里面提供了,可以参考。

你们的rots.npy里的相机位姿似乎和实际渲染的图片不太一致,rots里有很多位姿是相同的,渲染图片里好像都是不同的位姿

这个·rots.npy是指的是物体的旋转,我们为了方便,并没有旋转相机。 麻烦可以检查一下

所以你们是旋转物体,然后固定四个视角渲染,对吗?四个视角是(self.camera_embedding = torch.as_tensor([
[[1, 0, 0, 0],
[0, 0, -1, -self.distance],
[0, 1, 0, 0],
[0, 0, 0, 1]], # front to back

        [[0, 0, 1, self.distance],
        [1, 0, 0, 0],
        [0, 1, 0, 0],
        [0, 0, 0, 1]], # right to left

        [[-1, 0, 0, 0],
        [0, 0, 1, self.distance],
        [0, 1, 0, 0],
        [0, 0, 0, 1]], # back to front

        [[0, 0, -1, -self.distance],
        [-1, 0, 0, 0],
        [0, 1, 0, 0],
        [0, 0, 0, 1]], # left to right
    ], dtype=torch.float32)),

@dreaming-huang
Copy link
Author

感谢你们开源的代码,我现在有一个工作需要使用自己的数据集,但是我找不到objaverse-MIX处理数据集的流程,你们有尝试使用过自己的数据集吗?如果有的话可以给我提供一些建议吗?

有很多方法获取到最终的数据集,我们最主要是拿到表面的信息。 比如可以和 shape2vecset工作一样,使用https://github.com/autonomousvision/occupancy_networks提取水密的模型。 也可以通过多视角几何的方法获取物体的mesh。 得到mesh后将其转为sdf,便可以得到所需要的所有数据。

感谢你的回答,我跟随objaverse-MIX、occupancy_network获得了water_tight obj、point cloud、occupancies_field等,好像这个步骤对网格质量损害还是比较大的。此外,你们或者你们参考过的代码里,有渲染多视角图像的例子吗,我该怎么尽量和你们训练时使用的数据集对齐

这里的确实是有很多细节,但是对于VAE的训练,破碎的网格对于质量的影响不大,反而是细节的丢失可能会影响性能。 整体而言,VAE的核心是压缩并重建模型,所以可以尝试一下用你提取到的数据。 渲染的多视角图像我们在val和data sample里面提供了,可以参考。

你们的rots.npy里的相机位姿似乎和实际渲染的图片不太一致,rots里有很多位姿是相同的,渲染图片里好像都是不同的位姿

这个·rots.npy是指的是物体的旋转,我们为了方便,并没有旋转相机。 麻烦可以检查一下
我load CraftsMan-main/data/sample/raw_data/images/cap3d_high_quality_10k/00a1a602456f4eb188b522d7ef19e81b/rots.npy作为rotate_mtx,在每次渲染前使用
obj.matrix_world = original_matrix
obj.matrix_world = Matrix(rotate_mtx[i]) @ original_matrix
来旋转物体,使用固定的四个视角渲染图片,目前我只能在第0-4张图上与你们对齐(旋转矩阵为对角阵的情况),可以告诉一下我你们是怎么对物体进行旋转的吗

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

4 participants