NeRF Dataset Preparer

Michael Rubloff

Michael Rubloff

Email
Copy Link
Twitter
Linkedin
Reddit
Whatsapp
NeRF Dataset Preparer

Inspired by the auto sharp image culling method that we highlighted recently, another dataset preparer has hit Github.

Just like FFFDeblur, the image sharpness selection is based on Laplacian Variance and this script allows a user to specify a certain percentage of sharp images to utilize in a data set.

This comes with a bit more features, in that not only are you able to specify a specific percentage of photos to eliminate, but you can also see what section of the NeRF contain those images. For instance, if it’s removing a bunch of images from the back of the dataset, you would know that it’s likely the final parts of your data capture might have suffered from low quality data and thus that section might not come out well.

Personally I’m quite interested in the ability for anyone to shoot a mediocre video with any off-the-shelf phone camera and turn that into a good NeRF, these scripts were written with the intention to help with that.SharkWipfTweet

There are two main scripts to take a look at:01_filter_raw_data.py and 02_filter_colmap_data.py. Both scripts are completely written in Python.

Like its name implies, 01 filter raw data is the step where you specify the specific top percentage of sharp frames to be selected. This then automatically culls the least sharp frames, with the ability to send the removed frames to a new folder. You can choose to filter out a certain percentage of images or you can specify the total number of resulting images you want. Depending on your dataset, one option may make more sense than the other.

It visualizes the frequency of where the soon to be deleted images are coming from and showcases how image quality varies across the scene. Ideally, you would want an even distribution to come back. For instance, it could be a problem, if one section of your input data was so sharp, that the rest of the scene didn’t get equal representation in the final images selected. Luckily for all of us, unless otherwise specified, it tries to distribute the deleted images evenly across the dataset.

The method introduces two different tweakable parameters, Scalars and Groups. On default the method is set for Scalar 1, which creates the most image sections to pull from, ensuring that the final images removed are evenly distributed. Whereas Groups 1, would just be large group, where it’s pulling the worst images from, even if it’s just in one area of the video. Both parameters are able to be adjusted i.e. Scalar 1, 2, 3 or Groups 1, 2 , 3, etc..

This is an easy way to ensure that not only are you getting the sharpest images, but also control where the image distribution is coming from.

The second script, filter colmap data is where things get really cool. Once COLMAP has been run from the first script, you’re able to prune the image count down further, while still retaining the camera poses from COLMAP. This step will select the sharpest images based upon your input and allows for a more manageable VRAM load. This is a super helpful feature, depending on your GPU and its VRAM capacity.

This runs with overlapping dependencies as nerfstudio, so if you’ve already built and activated a nerfstudio environment, you can run it straight away! The code is MIT Licensed, so it is accessible for everyone to utilize. I love seeing extensions of the community that create methods to make NeRFs more accessible.

If you’re developing or have already created something that benefits the NeRF/radiance field community, please get in touch! I’d love to feature it.

Featured

Recents

Splatlight Generates Gaussian Splats From Blender Scenes Without a COLMAP Solve

Splatlight adds a scene generator to its Blender add-on, rendering auto-generated camera rigs and feeding known poses to a splat trainer with no COLMAP solve.

Michael Rubloff

Aug 25, 2026

Splatlight Generates Gaussian Splats From Blender Scenes Without a COLMAP Solve

Splatlight adds a scene generator to its Blender add-on, rendering auto-generated camera rigs and feeding known poses to a splat trainer with no COLMAP solve.

Michael Rubloff

PCD Splatter Turns E57 Laser Scans Into Gaussian Splats Inside Blender

PCD Splatter is a Blender add-on that reads E57 laser scans in pure Python and turns them into density-sized Gaussian splats rendered in Eevee and Cycles.

Michael Rubloff

Aug 25, 2026

PCD Splatter Turns E57 Laser Scans Into Gaussian Splats Inside Blender

PCD Splatter is a Blender add-on that reads E57 laser scans in pure Python and turns them into density-sized Gaussian splats rendered in Eevee and Cycles.

Michael Rubloff

Olli Huttunen Releases Point Cloud Merger for Blender

Olli Huttunen's Point Cloud Merger imports, aligns and merges multiple COLMAP reconstructions in Blender into one package for Gaussian Splatting training.

Michael Rubloff

Aug 24, 2026

Olli Huttunen Releases Point Cloud Merger for Blender

Olli Huttunen's Point Cloud Merger imports, aligns and merges multiple COLMAP reconstructions in Blender into one package for Gaussian Splatting training.

Michael Rubloff

Platforms

luma.gl 9.4.0 Beta Adds a GPU Gaussian Splat Renderer

vis.gl publishes @luma.gl/splats as a 9.4.0 beta, a GPU-native Gaussian splat renderer with WebGPU hierarchy traversal, bounded residency, and Spark RAD paging.

Michael Rubloff

Aug 24, 2026

Platforms

luma.gl 9.4.0 Beta Adds a GPU Gaussian Splat Renderer

vis.gl publishes @luma.gl/splats as a 9.4.0 beta, a GPU-native Gaussian splat renderer with WebGPU hierarchy traversal, bounded residency, and Spark RAD paging.

Michael Rubloff

Trending Articles
  1. TRENDING
    Loading...
  2. TRENDING
    Loading...
  3. TRENDING
    Loading...
Michael Rubloff

Written by Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

Email
Copy Link
Twitter
Linkedin
Reddit
Whatsapp

More from Michael Rubloff

More from Michael Rubloff

Splatlight Generates Gaussian Splats From Blender Scenes Without a COLMAP Solve

Splatlight adds a scene generator to its Blender add-on, rendering auto-generated camera rigs and feeding known poses to a splat trainer with no COLMAP solve.

Michael Rubloff

Aug 25, 2026

Splatlight

Splatlight Generates Gaussian Splats From Blender Scenes Without a COLMAP Solve

Michael Rubloff

Aug 25, 2026

Splatlight

Splatlight Generates Gaussian Splats From Blender Scenes Without a COLMAP Solve

Splatlight adds a scene generator to its Blender add-on, rendering auto-generated camera rigs and feeding known poses to a splat trainer with no COLMAP solve.

Michael Rubloff

Aug 25, 2026

Splatlight

PCD Splatter Turns E57 Laser Scans Into Gaussian Splats Inside Blender

PCD Splatter is a Blender add-on that reads E57 laser scans in pure Python and turns them into density-sized Gaussian splats rendered in Eevee and Cycles.

Michael Rubloff

Aug 25, 2026

PCD Splatter

PCD Splatter Turns E57 Laser Scans Into Gaussian Splats Inside Blender

Michael Rubloff

Aug 25, 2026

PCD Splatter

PCD Splatter Turns E57 Laser Scans Into Gaussian Splats Inside Blender

PCD Splatter is a Blender add-on that reads E57 laser scans in pure Python and turns them into density-sized Gaussian splats rendered in Eevee and Cycles.

Michael Rubloff

Aug 25, 2026

PCD Splatter

Olli Huttunen Releases Point Cloud Merger for Blender

Olli Huttunen's Point Cloud Merger imports, aligns and merges multiple COLMAP reconstructions in Blender into one package for Gaussian Splatting training.

Michael Rubloff

Aug 24, 2026

Point Cloud Merger for Blender

Olli Huttunen Releases Point Cloud Merger for Blender

Michael Rubloff

Aug 24, 2026

Point Cloud Merger for Blender

Olli Huttunen Releases Point Cloud Merger for Blender

Olli Huttunen's Point Cloud Merger imports, aligns and merges multiple COLMAP reconstructions in Blender into one package for Gaussian Splatting training.

Michael Rubloff

Aug 24, 2026

Point Cloud Merger for Blender