<commit_before># How to Run Offline Perception Visualizer

Although the dreamviewer tool can visualize and simulate the perception module, it lacks of the ability of visualizing point cloud and ROI area which are helpful for debugging and testing the perception algorithms. For this purpose, we provide an offline visualization tool based OpenGL and PCL libraries to show the obstacle perception result with point cloud. Please see [demo videos](http://apollo.auto/platform/perception.html) for this offline perception visualizer on Apollo official website.

We introduce the detailed steps to build and run the offline visualizer in docker as below:
### 1. Prepare PCD and Pose Data
Before running the visualizer, we need to prepare necessary PCD and Pose data which can be extracted from a ROS bag with recorded point cloud data. To facilitate the data extraction, we provide a ROS launch file to dump the PCD frame file and a python script to generate the Pose file for each frame.

1.1 Launch the PCD exporter (see details in [Velodyne driver doc](https://github.com/ApolloAuto/apollo_dev/tree/master/modules/drivers/velodyne))
```
roslaunch velodyne export_pcd.launch
```

1.2 Play ROS bag   
The default directory of ROS bag is `/apollo/data/bag`. Assume the file name of ROS bag is `example.bag`.
```
cd /apollo/data/bag
rosbag play --clock example.bag
```<commit_msg>Docs:update repository in docs (#930)<commit_after># How to Run Offline Perception Visualizer

Although the dreamviewer tool can visualize and simulate the perception module, it lacks of the ability of visualizing point cloud and ROI area which are helpful for debugging and testing the perception algorithms. For this purpose, we provide an offline visualization tool based OpenGL and PCL libraries to show the obstacle perception result with point cloud. Please see [demo videos](http://apollo.auto/platform/perception.html) for this offline perception visualizer on Apollo official website.

We introduce the detailed steps to build and run the offline visualizer in docker as below:
### 1. Prepare PCD and Pose Data
Before running the visualizer, we need to prepare necessary PCD and Pose data which can be extracted from a ROS bag with recorded point cloud data. To facilitate the data extraction, we provide a ROS launch file to dump the PCD frame file and a python script to generate the Pose file for each frame.

1.1 Launch the PCD exporter (see details in [Velodyne driver doc](https://github.com/ApolloAuto/apollo/tree/master/modules/drivers/velodyne))
```
roslaunch velodyne export_pcd.launch
```

1.2 Play ROS bag   
The default directory of ROS bag is `/apollo/data/bag`. Assume the file name of ROS bag is `example.bag`.
```
cd /apollo/data/bag
rosbag play --clock example.bag
```
{'fraction_non_alphanumeric': 0.05703971119133574, 'fraction_numerical': 0.004693140794223827, 'mean_word_length': 4.666666666666667, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '526663', 'n_tokens_mistral': 754, 'n_tokens_neox': 686, 'n_words': 392}