Giter Site home page Giter Site logo

Comments (4)

kitmallet avatar kitmallet commented on June 24, 2024 2

Hi @WN-Wolf I could probably help you out here as I have done photogrammetry for many years, although there are some special things to consider for Gaussian Splatting.
You can use any type of camera really. A better quality one would do a better job of course. It is important to not shoot too wide, like a go-pro. With my Canon I use a 18mm lens which works very well for me. Also, use as high f-stop as possible to get everything in focus. Shooting video is easier, but not as good quality. Whether you shoot video or photos it is also best to sharpen the images with Topaz, DarkTable or any other photo editing software. If you shoot objects it is good to get about 30-40 pictures for each circle around it. I Would do three rotations at 3 different heights. One looking straight at it, one looking up at it and one looking down. So ideally you would have around 100 pictures. For Gaussian splatting it is important that every photo overlaps with the previous photo. It doesn't work well if you jump to another angle. Continuous movement is important. if you are shooting areas like outdoors make sure that each photo has more than a 50% overlap. I use about 70% for my area dataset.
If you use video you will have to defragment the video with ffmpeg.
Create a folder where you will put in your video, and ffmpeg.exe, and also create an empty folder named "input".
You can get ffmpeg here: https://www.ffmpeg.org/download.html
This is a sample of the command.
ffmpeg -ss 00:00:00 -t 00:02:46 -i myvideo.mp4 -r 1.0 input/%004d.jpg
Make sure you put the end time of your video, put in the correct name of your video, and choose how many frames you cant to take out. -r 1.0 takes one frame each second. -r 0.5 does every 2 seconds. -r 2.0 does every half second.
Open command prompt, go to your directory that you created, and put these objects. Next simply put in the command above.
You should see the input folder populate with deframed pictures. These would now be used in Gaussian splatting.
Hope this helps.
One last thing, in SuGaR folder, create a folder called "data" and inside create a folder with the name of your project. Inside the project folder place your input folder with pictures.
Then...
python gaussian_splatting/convert.py -s data/"project_name"
Inside the data/"Project_name" folder will be the following:
distorted folder
images folder
input folder
sparse folder
stereo folder
run-colmap-geometric Shell Script
run-colmap-photometric Shell Script
Then:
python gaussian_splatting/train.py -s data/"project_name"
Inside the output/good folder will be 4 files:
Point_cloud Folder
cameras JSON File
cfg_args File
input PLY file

Best,
Kit

from sugar.

WN-Wolf avatar WN-Wolf commented on June 24, 2024

@kitmallet, thanks for your help! Based on your guidance, I have run the results using my dataset. Thank you again for your detailed guidance!

from sugar.

clement-chupin avatar clement-chupin commented on June 24, 2024

Have you any informations to create the points3D.ply in the dataset folder ?
It's needed to run correctly the SuGaR reconstruction, but there is no mention on that on colmap or initial gaussian splatting documentation.

from sugar.

Anttwo avatar Anttwo commented on June 24, 2024

Thank you so much @kitmallet for your detailed, and very useful explanation!

Hello @clement-chupin,
Sure, I just saw the issue you created about this problem, and I'm interested in helping you to solve it!
Feel free to provide more details about this in the dedicated issue.
I agree this looks strange, as the PLY file should be generated by the initial Gaussian Splatting script.
Let's investigate this!

from sugar.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.