0
0
Computer Visionml~20 mins

Point cloud processing in Computer Vision - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Point Cloud Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding Point Cloud Normal Estimation

Which method is commonly used to estimate normals in a point cloud for surface reconstruction?

AApplying k-means clustering to segment the point cloud
BApplying Fourier transform on the entire point cloud
CUsing histogram equalization on point intensities
DUsing Principal Component Analysis (PCA) on the local neighborhood of each point
Attempts:
2 left
💡 Hint

Think about how to find the main direction of variation in a small group of points.

Predict Output
intermediate
2:00remaining
Output of Point Cloud Downsampling Code

What is the number of points after running this voxel grid downsampling code on a point cloud with 10000 points and voxel size 0.1?

Computer Vision
import open3d as o3d
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector([[x*0.05, y*0.05, z*0.05] for x in range(20) for y in range(20) for z in range(25)])
downsampled = pcd.voxel_down_sample(voxel_size=0.1)
num_points = len(downsampled.points)
print(num_points)
A4000
B5000
C2000
D10000
Attempts:
2 left
💡 Hint

Consider how many voxels fit in the bounding box when voxel size is 0.1 and points are spaced by 0.05.

Model Choice
advanced
2:00remaining
Choosing a Model for Point Cloud Classification

You want to classify objects from raw 3D point clouds with varying point counts and no fixed grid. Which model architecture is best suited?

A3D Convolutional Neural Network on voxelized grid
BPointNet architecture using symmetric functions on points
CFully connected network on flattened point coordinates
DRecurrent Neural Network processing points sequentially
Attempts:
2 left
💡 Hint

Think about models that handle unordered sets and varying input sizes.

Metrics
advanced
2:00remaining
Evaluating Point Cloud Segmentation Quality

Which metric best measures the quality of semantic segmentation on a point cloud where each point is assigned a class label?

AMean Intersection over Union (mIoU) over all classes
BRoot Mean Square Error (RMSE) of point coordinates
CSilhouette score of clustered points
DAccuracy of predicted bounding box coordinates
Attempts:
2 left
💡 Hint

Consider a metric that compares predicted and true class labels per point across classes.

🔧 Debug
expert
2:00remaining
Debugging Point Cloud Registration Code

Given this code snippet for point cloud registration, what error will it raise?

Computer Vision
import open3d as o3d
import numpy as np
source = o3d.io.read_point_cloud('source.pcd')
target = o3d.io.read_point_cloud('target.pcd')
threshold = 0.02
trans_init = np.eye(4)
reg_p2p = o3d.pipelines.registration.registration_icp(
    source, target, threshold, trans_init,
    o3d.pipelines.registration.TransformationEstimationPointToPoint())
print(reg_p2p.transformation)
ANameError: name 'np' is not defined
BFileNotFoundError: source.pcd not found
CTypeError: registration_icp() missing required positional argument
DAttributeError: 'PointCloud' object has no attribute 'read_point_cloud'
Attempts:
2 left
💡 Hint

Check if all necessary libraries are imported before use.