wanmeihuali / taichi_3d_gaussian_splatting

An unofficial implementation of paper 3D Gaussian Splatting for Real-Time Radiance Field Rendering by taichi lang.
Apache License 2.0
637 stars 58 forks source link

Point filtering #166

Closed smileyenot983 closed 3 months ago

smileyenot983 commented 4 months ago

Thanks for this splatting implementation. It helps me to learn it. I found out that in point filtering(https://github.com/wanmeihuali/taichi_3d_gaussian_splatting/blob/main/taichi_3d_gaussian_splatting/GaussianPointCloudRasterisation.py#L74) you have following lines: pixel_u >= -TILE_WIDTH * BOUNDARY_TILES and pixel_u < camera_width + TILE_WIDTH * BOUNDARY_TILES and \ pixel_v >= -TILE_HEIGHT * BOUNDARY_TILES and pixel_v < camera_height + TILE_HEIGHT * BOUNDARY_TILES

Is this check necessary? In my understanding of camera intrinsics - it would transform points in camera frame into pixel space in such way that their coordinates will be in range of [0,camera_width] and [0, camera_height]. This check looks redundant for me. However, i am not excluding that i might be wrong

Could you describe what was the idea?

yanzhoupan commented 3 months ago

Based on my understanding, this is mainly for efficiency. To remove points that will not show up in the camera.