Найти Π² Π”Π·Π΅Π½Π΅
МашинноС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅

🌟 HoloPart: гСнСративная 3D-сСгмСнтация

🌟 HoloPart: гСнСративная 3D-сСгмСнтация.

3D-сСгмСнтация ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° сСмантичСскиС части β€” Π·Π°Π΄Π°Ρ‡Π° Π½Π΅ новая, Π½ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π΄ΠΎ сих ΠΏΠΎΡ€ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ повСрхностями, игнорируя скрытыС области. Π­Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ рСдактирования Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ, Π³Π΄Π΅ Π½ΡƒΠΆΠ½Ρ‹ ΠΏΠΎΠ»Π½Ρ‹Π΅ части.

HoloPart β€” модСль, разработанная VastAI, которая Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ амодальной сСгмСнтации для 3D-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², восстанавливая скрытыС Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹. Π‘ HoloPart ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ колСс Ρƒ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ частями. Для Ρ…ΡƒΠ΄ΠΎΠΆΠ½ΠΈΠΊΠΎΠ² ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² это экономит часы Ρ€ΡƒΡ‡Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

МодСль Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² 2 этапа: сначала стандартная сСгмСнтация выдСляСт Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ части, Π° Π·Π°Ρ‚Π΅ΠΌ HoloPart достраиваСт ΠΈΡ… Π΄ΠΎ ΠΏΠΎΠ»Π½Ρ‹Ρ… 3D-Ρ„ΠΎΡ€ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ ΠΈΠ· локального ΠΈ глобального внимания. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Ρ„ΠΎΠΊΡƒΡΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° дСталях ΠΊΠ°ΠΆΠ΄ΠΎΠΉ части, Π° контСкстноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдит, Ρ‡Ρ‚ΠΎΠ±Ρ‹ восстановлСнныС элСмСнты Π½Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²Π°Π»ΠΈ с ΠΎΠ±Ρ‰Π΅ΠΉ структурой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

ЭкспСримСнты Π½Π° датасСтах ABO ΠΈ PartObjaverse-Tiny ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ HoloPart ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΎΠ² - PatchComplete ΠΈ DiffComplete ΠΏΠΎ всСм ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ°ΠΌ. Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ Chamfer Distance (ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ совпадСния Ρ„ΠΎΡ€ΠΌ) Ρƒ HoloPart β€” 0.026 ΠΏΡ€ΠΎΡ‚ΠΈΠ² 0.087 Ρƒ DiffComplete Π½Π° ABO. А F-Score, ΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρƒ восстановлСния, достигаСт 0.848 ΠΏΡ€ΠΎΡ‚ΠΈΠ² 0.371 Ρƒ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ².

⚠️ ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ glb-Ρ„Π°ΠΉΠ» Π² HoloPart ytj Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ΅Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ сторонними срСдствами. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽΡ‚ SAMPart3D ΠΈ SAMesh.

β–ΆοΈΠ›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ инфСрСнс:

# Clone the repo

git clone https://github.com/VAST-AI-Research/HoloPart.git

cd HoloPart

# Create a conda env

conda create -n holopart python=3.10

conda activate holopart

# Install dependencies

pip install torch torchvision --index-url https://download.pytorch.org/whl/{your-cuda-version}

pip install -r requirements.txt

# Step 1: Prepare segmented mesh with a mesh file and mask

import trimesh

import numpy as np

mesh = trimesh.load("mesh.glb", force="mesh")

mask_npy = np.load("mask.npy")

mesh_parts = []

for part_id in np.unique(mask_npy):

mesh_part = mesh.submesh([mask_npy == part_id], append=True)

mesh_parts.append(mesh_part)

mesh_parts = trimesh.Scene(mesh_parts).export("input_mesh.glb")

# Step 2: Decompose the 3D mesh into complete parts:

python -m scripts.inference_holopart --mesh-input assets/example_data/file.glb

πŸ“ŒΠ›ΠΈΡ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅: MIT License.

πŸŸ‘Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

🟑МодСль

🟑Arxiv

πŸ–₯GitHub

@machinelearning

#AI #ML #3D #HoloPart #Segmentation #VastAI

-2
-3
ВзглянитС Π½Π° эти Ρ‚Π΅ΠΌΡ‹