Home

Awesome

CED_Detector

1. Introduction

We propose an efficient multi-modal keypoint detector that can extract both geometry-salient and color-salient keypoints in a colored point cloud, with the potential to be applied to point clouds with multiple modalities (e.g., colored by multi-spectrum images).

The proposed CEntroid Distance (CED) keypoint detector comprises

Despite the fact that colored point clouds can be readily obtained, there currently exists no effective detectors that make good use of both modalities. We hope that this work can inspire researchers in the field and benefit downstream systems that can leverage color modality to improve performance.

Authors: Hanzhe Teng, Dimitrios Chatziparaschis, Xinyue Kan, Amit K. Roy-Chowdhury, and Konstantinos Karydis from ARCS Lab and VCG Lab at UC Riverside.

Videos: Our presentation at WACV 2023 will be posted once available.

Related Publications: H. Teng, D. Chatziparaschis, X. Kan, A. K. Roy-Chowdhury and K. Karydis, "Centroid Distance Keypoint Detector for Colored Point Clouds", in IEEE/CVF Winter Conference on Applications of Computer Vision (WACV), 2023. To appear. (preprint)

2. Qualitative Example

Below is an example of keypoints detected on an arbitrary frame in the Redwood Scan dataset (real-world scene, RGB-D camera), where our proposed CED detector can capture color changes between floor tiles and extract keypoints with high regularity, and (out of all methods) only ISS, CED and CED-3D (its geometry-only variant) detectors can extract keypoints on four stove knobs.

3. Installation

3.1 Prerequisites

3.2 Steps

4. Usage

4.1 Test keypoint detection and visualize in Open3D (recommended)

cd scripts
python3 view_keypoint.py

4.2 Test keypoint detection and visualize in PCL

Set pcl_visualization to true in test_kp_config node in the config.yaml file, and run

cd build
./test_keypoint ../config/config.yaml

4.3 Test registration pipeline and visualize in PCL

cd build
./test_registration ../config/config.yaml

4.4 Tune parameters

Modify config/config.yaml file to change the paths for input clouds and output results, control the running flow of keypoint detection and point cloud registration tasks, and tune parameters at runtime. The meaning of each parameter has been explained in the comments in the YAML file. Default parameters currently presented in the YAML file are tuned empirically or set according to related literature/implementation (e.g., ISS, Harris3D).

5. Code Structure

6. Future Work

The proposed CED detector is inspired and motivated by the ORB keypoint detector in 2D images (where intensity centroid was used as the measure of orientation), and aims to attain relatively high performance while keeping computational time to a minimum (cf. ORB vs. SIFT). It targets real-time CV & robotics applications. If running time is not a concern, combining Harris/ISS detector in 3D space and a new eigenvalue -based detector in (multi-spectrum/dimension) color space may lead to a better result.

As for the performance of specific tasks as a whole, we also need to pay attention to the downstream components. For example, in the point cloud registration pipeline, we shall ask:

In addition, there also lacks multi-modal datasets for evaluation in the field, especially in outdoor environments.

We hope that you find this work interesting and inspiring, and we would like to call for more attention in the field of multi-modal perception. IMHO, (multi-spectrum) colored point clouds can be really beneficial to applications such as mapping, place recognition or loop closure.

You are very welcome to contact us or open a new issue in this repository if you have any questions/comments! Discussions on these open problems or future work are also welcome!