Comments (14)
Hi @smandava98
If you look at the code below, it reads an image and generates pixel indexes to optimize the geometry. What you would do is read the corresponding masks and remove the unwanted pixels. If you have something working, feel free to submit a PR :)
neuralangelo/projects/neuralangelo/data.py
Lines 49 to 85 in 2213bb3
from neuralangelo.
Yes, feeding masks is definitely an option. We removed this functionality in the release as we did not feel there will be lots of use cases. Usually people are happy with both lamps and house ;)
I will add this to our todo list
from neuralangelo.
Hi @smandava98
- Neuralangelo optimizes the surface in a canonical coordinate system, which is the coordinate where camera/object poses are defined.
- Two different video sequences of the same object often do NOT have the same coordinate frame due to how COLMAP initializes the world coordinate. However, it is possible to align the coordinates using a single affine transformation.
from neuralangelo.
Thanks Max. I have a followup question:
How can I run the neural reconstruction around a particular object in a video? For example, I have a video of a house on a road but a street lamp is blocking parts of the house in some frames which are then more visible in future frames. How can I somehow omit this object in the reconstruction and have missing pieces of that house filled up from later video frames?
from neuralangelo.
Hi @smandava98
Neuralangelo can handle occlusion and will simply reconstruct both objects (i.e., the lamp and the house). If you don't want the lamp, you have two options:
- remove the lamp after extracting the mesh using mesh editing softwares (such as meshlab or blender)
- remove the lamp from the bounding regions. You can see step 5 in Data Preprocessing on how to adjust the bounding region
from neuralangelo.
This still seems to be a manual approach. Is there any way to make it automatic? I have a tons of videos of houses but are being obstructed by lamps and I have a instance segmentation model for the lamps that gives me the masks. Is there not a way where I can just feed Neuralangelo a mask that it can ignore automatically?
from neuralangelo.
Thank you! Adding that option will be extremely helpful. My use case is I want to get clear reconstructions of certain objects and lamps and all that are unnecessary elements in that reconstruction I'm trying to create.
Hope this illuminated the use case better.
from neuralangelo.
Hi @mli0603. Thanks for your detailed and consistent support to the community. It's amazing.
While I wait for this enhancement to be added, can you please point me to which file(s) I might need to modify to have it ignore a mask? Since you mentioned it was included before but it got removed.
from neuralangelo.
Awesome, thank you. Will definitely put up a PR if I get it working :)
from neuralangelo.
I also encountered the same problem, I added Neus's Mask loss and tried white background, but it didn't work. Ask the author if he has any feasible suggestions.
from neuralangelo.
Please also see #58 for related discussions.
from neuralangelo.
@smandava98 @tkl2020
Hello!
I also encountered this problem. I read the mask images and added mask_loss, but it seemed to have no effect. What files did you change to succeed?
Thank you! Looking forward to replying
from neuralangelo.
@smandava98 @tkl2020 Hello! I also encountered this problem. I read the mask images and added mask_loss, but it seemed to have no effect. What files did you change to succeed? Thank you! Looking forward to replying
I succeeded by setting background enabled to false and using image=image*mask
from neuralangelo.
@lishaobingdong Hi, I am trying to do the same task of training neuralangelo on a scene with masks to remove certain objects. Can you elaborate a little on how you mange to make it work!! Thank you so much ;))
from neuralangelo.
Related Issues (20)
- Colab Demo Broken HOT 1
- What is the difference between numerical taps 4 and 6? HOT 1
- oom problem during train
- ModuleNotFoundError: No module named 'tinycudann'
- I'm curious about how the F1 score was calculated in the paper.
- CondaEnvException: Pip failed------failed to build tinycudann HOT 2
- How to add texture HOT 1
- How to "run neuralangelo"
- Save rendered images from the trained model
- Can I ask if this code can be used for scene reconstruction?
- Load a trained model and generate novel view
- how to get the envirement mesh
- Correlation of training speed influencing hyperparameters
- RGB View Synthesis
- merits
- Configuration file for Blender dataset
- Colab Notebook Throws Error: No such file or directory: 'datasets/lego_ds2/images HOT 1
- PSNR Evaluation
- Direct point cloud extraction. Mesh extraction: addressing different results
- Neuralangelo on driving scenes
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from neuralangelo.