RobotCup: The Future Champion League

RoboCup is an annual international robotic competition proposed in 1997 and founded in 1997. The aim is to promote robotics and AI research, by offering a publicly appealing, but formidable challenge. The name RoboCup is a contraction of the competition’s full name, “Robot Soccer World Cup”, but there are many other stages of the competition such as “RoboCupRescue”, “RoboCup@Home” and “RoboCupJunior”. In 2015 the world’s competition was held in Heifei, China. RoboCup 2016 will be held in Leipzig, Germany. The official goal of the project:

“By the middle of the 21st century, a team of fully autonomous humanoid robot soccer players shall win a soccer game, complying with the official rules of FIFA, against the winner of the most recent World Cup”.

As a Master student of Frankfurt University, I aslo have a project with the Robot who is the best choice for for the Robot Cup as the moment, his name is NAO.

NAO

Nao (pronounced now) is an autonomous, programmable humanoid robot developed by Aldebaran Robotics, a French robotics company headquartered in Paris. The robot’s development began with the launch of Project Nao in 2004. On 15 August 2007, Nao replaced Sony’s robot dog Aibo as the robot used in the Robot Cup Standard Platform League, an international robot soccer competition. The Nao was used in RoboCup 2008 and 2009, and the NaoV3R was chosen as the platform for the SPL at RoboCup 2010. Nao robots have been used for research and education purposes in numerous academic institutions worldwide. As of 2015, over 5,000 Nao units are in use in more than 50 countries.

About me

Hi, tôi là Thành, tốt nghiệp master tại Frankfurt University of Applied Science (Sep 2017). Tôi lập ra blog về Autonomous Navigation này với mục đích đóng góp một chút sức lực vào cộng đồng xe tự  lái Việt Nam cũng như giúp mọi người tiếp cận lĩnh vực này một cách nhanh chóng và dễ dàng nhất để giải quyết những bài toán phức tạp mà chúng ta đang đối mặt hiện nay.

Ắt hẳn khi chúng ta tìm kiếm từ khóa “Autonomous Navigation”, có rất nhiều kết quả gồm các tài liệu, các khóa học, các trang blog và các phần mềm để cho chúng ta tìm hiểu. Thông thường, ta sẽ đọc hết các nguồn tài liệu này với hy vọng nắm bắt các khái niệm nhanh nhất có thể. Tuy nhiên, việc làm này đòi hỏi rất nhiều thời gian và công sức, đồng thời phải có người hướng dẫn để chúng ta bắt đầu. Thay vì vậy, blog này hướng mọi người đến sự hiểu biết thấu đáo về lĩnh vực Autonomous Navigation cả về kĩ năng làm việc lẫn kiến thức trong ngành công nghiệp này.

Thông qua các ví dụ thực tế và ngôn ngữ lập trình cụ thể, ta sẽ đóng vai như một kỹ sư tự lái thực thụ. Ta quan tâm nhiều đến bài toán cần giải quyết hơn là các lý thuyết về các thuật toán. Vì các thuật toán này thường đã có các thư viện cài đặt sẵn cũng như đã được tối ưu cho từng mô hình xác định. Ta không nên mất nhiều thời gian xây dựng lại những gì đã có, để rồi trở nên chán nản và từ bỏ mục tiêu ban đầu của mình.

Thêm vào đó, tôi cũng chia sẻ những kinh nghiệm của mình trong học tập, làm việc và nghiên cứu để các bạn trẻ mới bắt đầu trong lĩnh vực này tham khảo cũng như định hướng sự nghiệp sau này của mình được tốt hơn.

Hy vọng những gì tôi mang lại trong blog giúp ích được nhiều cho mọi người trong học tập, công việc và ngày càng đam mê hơn với Autonomous Navigation . Mọi thắc mắc, các bạn có thể liên hệ riêng qua form đặt ở sidebar bên phải hoặc comment bên dưới để các bạn quan tâm cùng tham khảo.

 

Hallo, ich bin Thanh, Master in der Frankfurter Fachhochschule (Sep 2017). Ich habe diesen Autonomen Navigation Blog mit dem Ziel, ein wenig Energie auf die vietnamesische Selbst-treibende Gemeinschaft sowie die Menschen Zugang zu dem Feld der schnellste und einfachste Weg, um komplexe mathematische Probleme zu lösen. Wir stehen jetzt vor.
Als wir nach dem Stichwort “Autonome Navigation” suchen, gibt es viele Ergebnisse, darunter Dokumente, Kurse, Blogs und Software für uns, um herauszufinden. Oft werden wir alle diese Quellen in der Hoffnung lesen, die Konzepte so schnell wie möglich zu erfassen. Allerdings erfordert dies viel Zeit und Mühe, und muss ein Moderator haben, um uns zu beginnen. Stattdessen zielt der Blog darauf ab, Menschen Einblicke in das Gebiet der Autonomen Navigation zu geben, sowohl in Bezug auf ihre beruflichen Fähigkeiten als auch ihr Wissen in der Branche.
Durch praktische Beispiele und Programmiersprache werden wir als wahrer Datenwissenschaftler fungieren. Wir sind mehr daran interessiert, das Problem zu lösen als die Theorie der Algorithmen. Da diese Algorithmen oft auch eingebaute Bibliotheken haben, sind sie für spezifische Modelle optimiert. Sie müssen nicht viel Zeit damit verbringen, wieder aufzubauen, was Sie haben, dann werden Sie deprimiert und verlassen Ihr ursprüngliches Ziel.

Darüber hinaus teile ich auch meine Erfahrungen in dem Studium, der Arbeit und der Erforschung, damit junge Menschen ihre Karriere in diesem Bereich beginnen und ihre zukünftige Karriere begleiten können.
Hoffentlich, was ich in den Blog bringen, hilft viel für Menschen beim Lernen, Arbeiten und immer leidenschaftlicher mit Autonomer Navigation. Alle Fragen, können Sie durch das Formular in der rechten Seitenleiste oder Kommentar unten für Ihr Interesse an der gleichen Referenz zu kontaktieren.

Căn Bản Về Python (Python programing language)

Python là một ngôn ngữ lập trình thông dịch nhe do Guido van Rossum tạo ra năm 1990. Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động; do vậy nó tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl. Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý.

Theo đánh giá của Eric S. Raymond, Python là ngôn ngữ có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình. Cấu trúc của Python còn cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu, như nhận định của chính Guido van Rossum trong một bài phỏng vấn ông.

Ban đầu, Python được phát triển để chạy trên nền Unix. Nhưng rồi theo thời gian, nó đã “bành trướng” sang mọi hệ điều hành từMS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix. Mặc dù sự phát triển của Python có sự đóng góp của rất nhiều cá nhân, nhưng Guido van Rossum hiện nay vẫn là tác giả chủ yếu của Python. Ông giữ vai trò chủ chốt trong việc quyết định hướng phát triển của Python.

Python được thiết kế để trở thành một ngôn ngữ dễ học, mã nguồn dễ đọc, bố cục trực quan, dễ hiểu, thể hiện qua các điểm sau:

  • Python tăng cường sử dụng từ khóa tiếng Anh, hạn chế các kí hiệu và cấu trúc cú pháp so với các ngôn ngữ khác.
  • Python là một ngôn ngữ phân biệt kiểu chữ HOA, chữ thường.
  • Như C/C++, các từ khóa của Python đều ở dạng chữ thường.

Trong các ngôn ngữ khác, khối lệnh thường được đánh dấu bằng cặp kí hiệu hoặc từ khóa. Ví dụ, trong C/C++, cặp ngoặc nhọn { } được dùng để bao bọc một khối lệnh. Python, trái lại, có một cách rất đặc biệt để tạo khối lệnh, đó là thụt các câu lệnh trong khối vào sâu hơn (về bên phải) so với các câu lệnh của khối lệnh cha chứa nó.

CauTrucPython

Ví dụ trên cho ta thấy cách trình bày một đoạn code Python cực kì rõ ràng và hiệu quả. Tương tự như Java, java sử dụng từ khóa import để biết được trong đoạn code này dùng những libraries nào. Trong python, một class sẽ thể hiện một instace của object tương tự như Java hoặc C++, nhưng các phương thức(Method) trong Python được viết là def(definition), phương thức def_init tương tự như constructor trong C++, sẽ chứa những defaut values của Class. Trong một class sẽ có thể có nhiều phương thức, trong mỗi phương thức sẽ là code để thực hiện một hành động gì đó cho class, ví dụ như class “Con Mèo” thì sẽ có những phương thức như đi, đứng, chạy, nhảy.

Where the wind creates cloud waterfalls

As the sun dipped lower and lower over the lush, volcanic Canary Islands, travelling steadily onward on its inexorable collision course with the sea, ripples of anticipation resonated across our small group of stargazers. Clad in warm coats (nights on the craggy flanks of the Spanish island’s giant volcano can be blustery), we listened as astrophysicist Agustin Nunez explained why La Palma is – no exaggeration – the best place on Earth to see the stars.\

tải xuống (3)
A view of the Milky Way (Credit: Enrique Mesa Photography/Getty)

First, he said, its position 100km off the coast of northern Africa means it is close to the equator, so you can see stars from both the northern and southern hemispheres – but in a temperate climate with placid weather patterns uncommon in the tropics.

Second, it’s very dark here, something that’s aided by an island-wide agreement to keep it that way, meaning all night-time lighting is either an orange hue (which doesn’t interfere with telescopes) or pointed down, at the ground.

But thirdly, and most importantly, is the wind. “Our trade winds are created by a high pressure system in the Azores, and travel more than 2,000km over the sea. When it hits our north shore, it’s crystal clear,” he said, noting that these smooth and slow winds creates an atmosphere where the stars are especially clear from the ground, both through a telescope and to the naked eye. “Here, we have the lowest turbulence on the planet.”

tải xuống (1)
Where land and clouds collide (Credit: Tim Johnson)

And all this is justly recognised: in 2012, La Palma became the world’s first Unesco recognised Starlight Reserve. The island is also home to one of the most important observatories on the planet: a place that houses 16 massive telescopes – including the largest one in the world.

It’s only recently that visitors have been able to partake in these excellent stargazing opportunities. For years, the observatory was a closed research facility, except for a handful of open days that attracted thousands of curious people. But with the observatory normalizing regular visits in 2013, the infrastructure – including a recent increase in guided starlight tours – is now in place for earthbound visitors to touch distant galaxies.

Down on terra firma, I was shown around the island by Sheila Crosby, an affable Englishwoman with a touch of the mad scientist, who worked at the Observatorio del Roque de los Muchachos for years as a software engineer. She’s also a certified starlight guide, and as she drove us somewhat erratically up and down La Palma’s winding roads, she started to explain the connections between land and sky, geology and astronomy – and how the island’s unique structure has created a number of Earth-bound wonders: for one, a cloud waterfall.

North Korea: An Beautiful Contry

North Korea (Democratic People’s Republic of Korea) is a country in east Asia, in the North-en part of the Korean Peninsula. The name Korea is derived from the Kingdom of Goguryeo. The capital and largest city is Pyongyang The country was improving its nuclear weapons “in quality and quantity”, state-run news agency KCNA reported. Yongbyon’s reactor was shut down in 2007 but Pyongyang vowed to restart it in 2013, following its third nuclear test and amid high regional tensions.

The reactor has been the source of plutonium for North Korea’s nuclear weapons programm. Experts believe that if re-started, the reactor could make one bomb’s worth of plutonium per year. The announcement about Yongbyon is the first official confirmation from North Korea that it has restarted operations there. A US think-tank said earlier this year that satellite images suggested that work had started at the plant.

The following picture will tell us a little bit about the normal life of the “Most secret country on the World “. From my side, I see this people here is node different with the other of the world, they still have a good life, peace and civilize. Only they just don’t use smart phone, live in city and use a lot of medical. And industry in Nord-Korea still not develop so they will have more fresh air than other country.

REDSVN-DPR-Korea-Hiroji-Kubota-01

Streets in the capital Pyongyang are spacious and clean. I have a felling that this is 1980 year. When I look this picture make me miss the past.

REDSVN-DPR-Korea-Hiroji-Kubota-04

The main crossroads in the city always had female traffic police on duty.

REDSVN-DPR-Korea-Hiroji-Kubota-03

North-Korean people dress simple but elegant, with a badge always mounted on the chest. That prove that the people in Nord-Korea is absolutely loyall with their goverment. This is an achievement of Nord-Korea goverment which we not see in many country.

REDSVN-DPR-Korea-Hiroji-Kubota-13

Ancient features a village in Korea.

REDSVN-DPR-Korea-Hiroji-Kubota-14

North Korea is focusing on developing heavy industry. The country is self-sufficient demand for locomotives, cars and other types of agricultural machinery and basic.

REDSVN-DPR-Korea-Hiroji-Kubota-33

A couple take wedding photo with the tower holder.

REDSVN-DPR-Korea-Hiroji-Kubota-23

Brings together thousands of participants, Arirang ensembles express the solidarity and strength of the country.

REDSVN-DPR-Korea-Hiroji-Kubota-29

North Korea is indicating it is near that stage, but there is no evidence that this is more than sabre-rattling right now.

RoboCup Standard Platform League: Goal Detection

Abstract—This paper presents a new fast and robust goal detection system for the Nao humanoid player at the RoboCup standard platform league. The proposed methodology is done totally based on Artificial Vision, without additional sensors. First, the goals are detected by means of color based segmentation and geometrical image processing methods from the 2D images provided by the front camera mounted in the head of the Nao
robot. Then, once the goals have been recognized, the position of the robot with respect to the goal is obtained exploiting 3D geometric properties. The proposed system is validated with real images by emulating real RoboCup conditions. Index Terms—RoboCup and soccer robots, Artificial Vision and Robotics, Nao humanoid, Goal Detection, Color Segmentation, 3D geometry.

A. Detection Based on Geometrical Relations
The first proposed method is intended to be robust and fast in order to overcome some of the usual drawbacks of the vision systems in the RoboCup, such as the excessive dependency of the illumination and the play field conditions, the difficulty in the detection of the goal posts depending on geometrical aspects (rotations, scale,. . . ) of the images captured by the robots, or the excessive computational cost of robust solutions based on classical Artificial Vision techniques. The proposed
approach can be decomposed into different stages that are described in the next subsections.
1) Color calibration: The first stage of the proposed method consists of a color calibration process. Thus, a set of YUV images acquired from the front camera of the Nao robot is segmented into regions representing one color class each.
Fig.2 shows an example image captured by the Nao robot containing a blue goal.
The segmentation process is performed by using a k-means clustering algorithm, but considering all the available centroids as initial seeds. Thus, in fact, seven centroids are utilized, corresponding to the colors of the ball (orange), goals (yellow and blue), field (green), robots (red and blue) and lines (white).
sensors-13-14954f7-1024

The first problem addressed in this project is the segmentation of the image to separate the object (in this case the goal) from the background. As the RoboCup rules specify that goals are painted either sky blue or yellow, a simple segmentation solution based on color has been chosen.  It can be assumed that normally no other objects of similar colors will be present in the picture taken from the camera. If a similar color object is indeed present, it will corrupt the segmentation result, and depending on is size or shape it can render the method inoperative.

Therefore, proper tuning of the segmentation parameters is mandatory to avoid these situations. The following figure shows the result of an ideal segmentation of a camera image.

Ideal segmentation (right) of the goal in the camera image (left).Edge_detection

Edge detection
Once the image is segmented to separate the goal from the background, one can attempt to extract the edges of the resulting binary image. This is done to reducethenumberoflinesdetectedinthefollowingHoughtransformstage, while retaining the structural information of the goal.

Ideal edge detection (right) of the segmented image (left).

Edge_detection1