ROBOTIS-GIT / turtlebot3_applications

Applications for TurtleBot3
http://turtlebot3.robotis.com
Apache License 2.0
84 stars 47 forks source link

Questions about the algorithm used in turtlebot3_applications/follower.py #37

Closed StevenZzz07 closed 4 years ago

StevenZzz07 commented 4 years ago

Dear Mr/Ms,

I am a graduate student from China and a beginner in ROS and turtlebot3. Recently i have been working on turtlebot3 to do some research in object tracking. I am reading the code of follower.py from pkg turtlebot3_applications and i have some questions for it as follows.

  1. In follower.py, you use the intensities field in /LaserScan msg to do the people object check rather than the range or angle. I google LaserScan intensity but get very little useful information. So could you please explain to me why the intensities field can be used to do the object detection instead of range and angle? What factor can affect the value of intensities and is there an equation to determine the value?

  2. What's more, in follower.py, it seems that only a line code is used to detect the object as follows: [x for (x , y) in self.labels.iteritems() if y == self.clf2.predict(laser_data_set) ] I am confused about the meaning of this line. And when i debug the code, i want to see the inner code of function predict(), but it turns out to be 'no definition'. So what algorithms do you use in this line of code? Is it scikit_learn library? If so, what exact algorithms do you use in this library? And I have read the file clf in config folder, it consists of characters and numbers but i cannot understand them. What is it? A trained classifier?

Sorry for the bother. I will greatly appreciate it if you could reply to me soon! Thank you very much. And i have to say, TurtleBot3 is awesome!

Have a nice day! Steven Zhu

JaehyunShim commented 4 years ago

@StevenZzz07

You can refer to the links below and also ask your questions there if needed. http://docs.ros.org/melodic/api/sensor_msgs/html/msg/LaserScan.html https://github.com/ros/common_msgs https://scikit-learn.org/stable/modules/model_persistence.html https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/externals/joblib/__init__.py

Any comments from you @Robolover?

Ryan

JaehyunShim commented 4 years ago

This video might also be very helpful. https://www.youtube.com/watch?v=IRtdxoPo8Y81

JaehyunShim commented 4 years ago

As there have been no updates, I am closing this issue.

StevenZzz07 commented 4 years ago

Thank you guys@rjshim @Robolover, your advice has done me a great favor on my project! THANKS again.