Lam An De

Sơn ngoại thanh sơn lâu ngoại lâu

Tây hồ ca vũ kỷ thì vưu

Noãn phong huân đắc du nhân tuý

Trực bả Hàng Châu tác Biện Châu

Nội dung bài thơ miêu tả bối cảnh thời Nam Tống, khi mà miền bắc Trung Quốc đã hoàn toàn bị thôn tính bởi người Liêu. Nhưng triều đình hủ bại, vua tôi quan lại chỉ lo vui chơi ca hát, giới nho sĩ trong nước có lòng báo quốc nhưng lực bất tòng tâm, người ta hay nói học trò khởi nghĩa, mười năm chưa thành là vậy, giới nho sĩ mặc dù tài hoa hơn người, có hùng tâm tráng chí, nhưng họ sinh ra đã đọc sách thánh hiền, bị tam cương ngũ thường trói buộc, làm sao mà họ dám lật đổ hoàng đế vì làm vậy khác nào đạp đổ đức tin của chính mình. Từ cổ chí kim, kẻ có gan chống trời đạp đất thực ra chỉ có hai loại, thứ nhất là con nhà võ tướng danh gia, nhưng người sinh ra đã có bá khí ngút trời, thứ hai là loại đầu trộm đuôi cướp, đầu đường xó chợ, vì chúng chả có gì để mất cả, chúng chỉ nghĩ là đánh một canh bạc lớn mà thôi, thắng thì chúng làm vua mà thua thì lại làm giặc như trước, minh chứng cho điều này là Hạng Vũ và Lưu Bang. Những kẻ nho sĩ gặp vận nước nguy nan thường chỉ biết ngửa mặt lên trời than trách hoặc làm thơ mắng những kẻ họ cho là không xứng đáng cầm quyền, đó là lí do mà bài thơ trên ra đời, đại ý là ngoài núi lại núi ngoài lầu lại lầu, tây hồ trăng thanh gió mát đến nỗi làm say lòng khách , say đến nỗi quên mất giành lại kinh đô của mình mà còn tưởng Hàng Châu tươi đẹp này mới là kinh thành.

Quan San Nguyet

Minh nguyệt xuất thiên san

Thương Mang vân hải giang

Thuỳ phong kỷ vạn lý

Suy độ Ngọc Môn quan

Hán hạ bạch đăng đạo

Hồ khuy Thanh Hải loan

Do lai chinh chiến địa

Bất kiến hữu nhân hoàn

Thú khách vọng biên sắc

Tư quy đa khổ nhan

Cao lâu ưng tử dạ

Thán tức vị ưng nhàn.

Tản mạn Xạ Điêu tam bộ khúc

Kim Dung đại hiệp mất đi để lại nỗi buồn vô hạn trong lòng người hâm mộ tiểu thuyết võ hiệp. Với những ai đọc Kim Dung, hẳn những câu thơ sau đã đi vào lòng biết bao thế hệ:

Thiên thu bá nghiệp bách chiến thành công.

Biên thanh tứ khởi Xướng đại phong.

index

Bá nghiệp ngàn năm, trải trăm trận mới dành thắng lợi

Dậy bốn phương trời, tiếng gió reo như tiếng hát mừng công

Nhưng câu thơ này đọc lên đã thấy được cả một thế giới võ hiệp đã được dựng lên một cách sinh động và đầy sắc màu. Một thế giới mà những Quách tĩnh, Hoàng Dung, Chu Bá Thông, Lệnh Hồ xung, Trương Vô Kỵ, Triệu Mẫn, Thiếu Lâm, Võ Đang, Cửu Dương thần công, Độc Cô Cửu Kiếm… tất cả làm nên một thế giới giang hồ thật đặc sắc, sinh động. Mặc dù nhiều cạm bẫy, cám dỗ nhưng vẫn có những anh hùng, đại hiệp sẵn sàng xông pha, gánh vác đại sự cho thiên hạ để rồi lưu danh thiên cổ. Dưới ngòi bút Kim Dung, nhiều bộ võ công và bí tịch đã ra đời. Ông có một trí tưởng tượng cực kì phong phú khi đã sáng tạo ra những bộ võ công có chiêu số, khẩu quyết và có sự liên kết chặt chẽ với nhau. Lối hành văn mạch lạc của Kim Dung lại càng khiến những bộ võ công kia giống như thực sự tồn tại chứ không phải hư cấu, đặc biệt ông có biệt tài lồng ghép các sự việc có thật và hư cấu với nhau, làm người đọc tưởng như mình đang đọc dã sử vậy, nhân vật trong truyện Kim Dung có mối quan hệ mật thiết, và các biến cố trong cuộc đời họ giữ được sự mạch lạc và liên tục qua các bộ truyện khác nhau. Đồng thời những nhân vật trên mặc dù là hư cấu, nhưng được lồng ghép tài tình vào các địa danh và sự kiện lịch sử có thật trong lịch sử Trung Hoa. Khi đọc truyện Kim Dung, người đọc thấy mình như hoà vào thế giới ấy, khi tình yêu, thù hận, lòng tham được làm võ lâm chí tôn, được miêu tả một cách thật đặc biệt. Trong một đoạn ỷ thiên đồ long kí có bài thơ sau

Võ lâm chí tôn, bảo đao Đồ Long

Hiệu lệnh thiên hạ, mạc cảm bất tòng

Ỷ Thiên bất xuất, thuỳ dữ tranh phong

Ba câu thơ trên đọc lên đã thấy được sự bá đạo của thanh đồ long đao, nhưng người ta cũng đặt câu hỏi, chỉ là một thanh đao, dù sắc bén đến đâu cũng làm sao có thể hiệu lệnh thiên hạ. Thực ra khi độc giả theo dõi sẽ biết rằng bí ẩn không nằm ở đao mà nằm bên trong nó, nơi mà võ mục di thư của danh tướng Nam Tống Nhạc Phi để lại cho hậu được thiết kế dấu trong bảo đao. Võ mục di thư tương truyền là cuốn binh pháp duy nhất được Nhạc Vũ Mục biên soạn và ai có nó trong tay có thể đoạt thiên hạ.

Anh hùng xạ điêu là bộ truyện đầu tiên mang cái tên kim dung sáng bừng trên văn đàn Trung Quốc. Nội dung câu chuyện được lồng ghép vào bối cảnh Trung Hoa thời Nam Tống, khi mà toàn bộ phía bắc lưu vực sông Hoàng Hà đã bị người Liêu chiếm đóng và lập ra nước Đại Liêu. Liêu quốc hùng mạnh liên tục xua quân nam hạ, muốn thôn tính Đại Tống. Thực ra lúc đó Tống triều đã suy yếu nhiều, ngay cả tổng quản thái giám Lý Thường Kiệt của nước ta cũng đem mười vạn đại quân đánh sâu vào lãnh thổ đất Tống, nhưng sau đó không thích chiếm nên rút về. may mắn là Tống quốc lực tàn nhưng chưa tận. Họ vẫn còn nhưng vị danh tướng như Dương Nghiệp, Nhạc Phi đủ sức đương đầu hoạ từ phương bắc,

Sơ lược về Vision-Based Navigation

Vision-based Navigation là một trong những lý thuyết về công nghệ tự hành (autonomous driving). Bên cạnh Laser-Base, IMU-base, thì vision base là một công nghệ có thể nói là khá rẻ, chỉ cần một 3D-camera(stereo-camera hoặc Kinect), ta có thể chụp được hình ảnh 3D của môi Trường xung quanh dùng vision odometry để xác định vị trí và hướng đi của robot trong map và có thể nói là chúng ta đã thực hiện xong SLAM(Simultaneous Localization and Mapping).

Để nói về vision-base trước tiên cần nói về cách để chúng ta match hai tấm ảnh lại. Khi ta sử dụng camera để chụp ảnh thì chỉ chụp được một tấm vào một thời điểm thôi. Nhưng khi bạn dung panorama chẳng hạn, thì có thể chụp được tấm hình với góc rộng hơn nhiều chi tiết hơn sẽ được thể hiện. Chế độ panorama có thể làm được điều này nhờ ghép các tấm ảnh đơn lẻ lại với nhau. Nhưng ghép như thế nào, hôm nay chúng ta sẽ tìm hiểu về điều đó.

CS.PNG

Nhìn vào hai tấm ảnh trên ta thấy chúng được chụp ở 2 góc gần nhau, tấm thứ hai dịch qua phải một tí. Và nếu mình muốn thấy hết dãy núi thì phải ghép hai tấm lại. Và các bước ghép như sau:

1/ Đầu tiên ta sẽ nhìn ra những điểm quan trọng trong một bức hình, gọi là features detection, bởi vì bức hình là một tập hợp những điểm ảnh, và chỉ cần một số điểm ảnh là có thể miêu tả gần như đầy đủ tấm hình. Có nhiều cách để tách các features từ tấm ảnh, ví dụ như ta dùng Canny edges detection. Hoặc là dùng convolution high pass filter quét qua tấm ảnh để thu được những khu vực có độ tương phản cao (high contrast). Sau khi làm các bước trên ta có tấm hình như sau.

2/ Sau khi xác định được các điểm quan trọng, việc tiếp theo là nối tụi nó lại, vấn đề là nối thế nào?

Trước tiên ta phải nhận dạng các features mà ta detect được, bởi muốn ghép hai tấm hình ngọn núi lại, vậy thì khu vực nào phải ghép với khu vực đó, như chân núi ghép với chân núi, đỉnh núi ghép với đỉnh núi. Không thể lấy râu ông nọ cắm cằm bà kia được. Các features được chọn phải đặc biệt, và vẫn giữ đặc tính khi bị xoay hoặc di chuyển.

Một trong những Phương pháp áp dụng là SIFT(Scale invariance features transformation):

CS2.PNG

Ý tưởng của SIFT:

Nội dung của một bức ảnh sẽ được lấy ra để vào một khu vực, ở đây  ta gọi là “túi ảnh”. Túi này chứa những features nói lên đặc tính của tấm ảnh thứ nhất.  Khi so sánh với tấm ảnh thứ hai được chụp từ một góc khác , những features được so sánh để xác nhận xem hai tấm có giống nhau hay không.

CS3.PNG

Sơ lược về Robot Operating System(ROS)

Robot operating system  là một hệ thống phần mềm chuyên dụng để lập trình và điều khiển robot, bao gồm các công cụ để lập trình, hiển thị, tương tác trực tiếp với phần cứng, và kết nối cộng đồng robot trên toàn thế giới. Nói chung là nếu bạn muốn lập trình và điều khiển một con robot, sử dụng phần mềm ROS sẽ giúp quá trình thực hiện nhanh hơn và bớt đau khổ hơn rất nhiều. Và bạn không cần ngồi viết lại những thứ mà người khác đã làm rồi, mà có những thứ muốn viết lại cũng không có khả năng. Như Lidar hoặc Radar driver chẳng hạn.

ROS chạy trên nền Ubuntu,  do đó để sử dụng ROS đầu tiền các bạn phải cài Linux. Cho bạn nào chưa biết cài Linux và ros thì mình có link này cho các bạn:

 

Những Robot và sensor được hỗ trợ bởi ROS:

16

Trên đây là những robot được hỗ trợ, bắt đầu từ Pepper(a), REEM-C(b), Turtlebot(c), Robotnaut(d) và Universal robot(e). Ngoài ra, các sensor được hỗ trợ bởi ROS gồm có LIDAR, SICK laser lms1xx, lms2xx, Hokuyo, Kinect-v2, Velodyne.., để biết thêm chi tiết, các bạn có thể xem hình dưới đây.

17

Hiểu cơ bản về cách hoạt động của ROS:

Về cơ bản ROS files được bố trí và hoạt động như sau, từ trên xuống theo thứ tự như sau, metapackages, packages, packages manifest, Misc, messages, Services, codes:

18Trong đó gói tổng(Metapackages) là một nhóm các gói(packages) có liên quan tới nhau. Lấy ví dụ như, trong ROS có một gói tổng tên là Navigation, gói này có chứa tất cả các gói liên quan tới việc di chuyển của robot, bao gồm di chuyển thân, bánh, các thuật toán liên quan như Kalman, Particle filter… Khi chúng ta cài đặt gói tổng, nghĩa là tất cả các gói con trong nó cũng được cài đặt.

Gói(Packages), ở đây là mình dịch là gói cho dễ hiểu, khái niệm gói rất quan trọng, chúng ta có thể nói rằng cái gói chính là các nguyên tử cơ bản nhất tạo nên ROS. Trong một gói gồm có, ROSnode, datasets, configuration files, source files,  tất cả được gói lại trong một “gói”. Tuy nhiên, mặc dù có nhiều thứ  trong một, gói, nhưng để làm việc, chúng ta chỉ cần quan tâm 2 thứ trong 1 gói, đó chính là src folder, chứa source code của chúng ta, và file Cmake.txt, đây là nơi ta khai báo những thư viện cần thiết để thực thi(compile) code.

Sự Tương tác giữa các node trong ROS

ROS computation graph là bức tranh toàn cảnh về sự tương tác của các nodes, topics với nhau.

19

Ở hình trên ta có thể thấy Master chính là nodes kết nối tất cả các node còn lại, các nodes còn lại muốn giao tiếp với nhau phải thông qua node Master.

Nodes: ROS nodes chỉ đơn giản là quá trình sử dụng ROS API để giao tiếp với nhau. Một robot có thể có rất nhiều nodes để thực hiện quá trình giao tiếp của nó. Ví dụ như, một con robot tự lái sẽ có những node sau, node đọc dữ liệu từ Laser scanner, Kinect camera, localization and mapping, node gửi lệnh vận tốc cho hệ thống bánh lái.

Master: ROS master đóng vai trò như một node trung gian kết nối giữa các node khác nhau. Master bao quát thông tin về tất cả các nút chạy trong môi trường ROS. Nó sẽ trao đổi chi tiết của một nút với khác để thiết lập kết nối giữa chúng. Sau khi trao đổi thông tin, giao tiếp sẽ bắt đầu giữa hai nút ROS. Khi bạn chạy một chương trình ROS, lúc nào ros_master cũng phải chạy trước. Bạn có thể chạy ros master bằng cách ->terminal->roscore.

Message: Các nút ROS có thể giao tiếp với nhau bằng cách gửi và nhận dữ liệu dưới dạng ROS mesage. ROS message là một cấu trúc dữ liệu được sử dụng bởi các nút ROS để trao đổi dữ liệu. Nó giống như là một protocol, định dạng thông tin gửi đi nữa các node, ví dụ như string, float, int…

Topic: Một trong những phương pháp để giao tiếp và trao đổi tin nhắn giữa hai node được gọi là ROS Topic. ROS Topic giống như một kênh tin nhắn, trong kênh đó dữ liệu được trao đổi bằng ROS message. Mỗi chủ đề sẽ có một tên khác nhau tùy thuộc vào những thông tin mà nó sẽ phụ trách cung cấp. Một Node sẽ đăng bài(publish) thông tin cho một Topic và một nút khác có thể đọc từ Topic bằng cách đăng ký(subcrible) với nó. Cũng giống như bạn muốn xem video của mình thì phải subcrible channel của mình vây. Nếu bạn muốn xem thử chương trình mình đang chạy có những topic nào, thì câu lệnh là rostopic list, nếu muốn xem một topic nào đó xem thử có những node nào đang publish hoặc subcrible vào nó. Thì câu lệnh là rostopic info /têntopic. Nếu muốn xem trong topic đó có gì thì type rostopic echo /têntopic.

Service: Service là một loại phương pháp giao tiếp khác với Topic. Topic
sử dụng tương tác publish hoặc subcrible nhưng trong dịch vụ, nó tương tác theo kiểu request – response. Cái này y chang như bên network. Một nút sẽ hoạt động như một server, có một server thường xuyên
chạy và khi Node client gửi yêu cầu dịch vụ cho server. Máy chủ sẽ thực hiện dịch vụ và gửi kết quả cho máy khách. Client node phải đợi cho đến khi máy chủ phản hồi với kết quả. Server đặc biệt hữu dụng khi chúng ta cần thực hiện một lệnh gì đó mà cần thời gian lâu để xử lý, vậy thì chúng ta để nó ở server, khi cần thì ta gọi.

 

Mùa đông cổ tích của vùng Alsace

Xin chào các bạn, à mà không, xin chào ”các bạn đọc tương lai”  tại vì hiện tại thì mình thấy chưa ai ghé xem cái trang này cả, mà cứ mở miệng ra chào các bạn như đúng rồi thì… hơi kì kì 😀

Đôi dòng giới thiệu (hãy đọc dù nó rất.. không liên quan!) : Giới thiệu luôn nhé, là chuyên mục này không phải do tên chủ nhân của blog này viết. Nhưng do chủ nhân của blog là anh Nguyễn Trương Thành đẹp zai (luôn tự nhận) dụ dỗ mấy lần để mình viết mấy bài về chuyến du lịch của hai đứa, vừa lưu giữ kỉ niệm, vừa màu mè thêm cho cái blog để… hút view ké :))) Chả biết có hút view không nữa…  nhưng vượt qua cái sự lười của bản thân, thì oke, thay vì mình ăn thêm 1 thanh socola, quất thêm một li kem, thì năm 2018 này, mình sẽ dành thời gian để làm 1 chuyện có lợi cho cái… bao tử của mình hơn, đó là quay trở lại việc viết lách, kể từ sau khi cái blog 360 của mình bị khai tử hồi đó (giờ nhớ lại vẫn tiếc, dành cả thanh xuân để viết blog đấy, nên nó hủy là đâm ra lười luôn). Mà tại mình cũng không muốn tự tạo áp lực cho bản thân, nên xài chung một cái mái hiên với anh zai này, thì cũng… được. Mai mốt có bực bội với nhau, người ta đòi quà, mình sẽ… đòi blog và lệ phí viết blog :)))

Ok, xong phần chào hỏi. Thông thường người ta hay có bài mở đầu. Nhưng mình thiết nghĩ, không muốn tốn thời gian của các bạn cho một bài giới thiệu nhàm chán, nên mình lấy chuyến du lịch vui nhất của bọn mình tính đến thời điểm hiện tại làm cảm hứng viết bài đầu tiên: Các ngôi làng Go-thic cổ xưa của miền nam nước Pháp ở vùng Alsace.

 

 

 

Hướng dẫn sử dụng phần mềm DOORS

Xin chào các bạn, trong block này mình sẽ hướng dẫn các bạn cách sử dụng phần mềm DOORS của IBM.

IBM Rational Doors: Getting Started

Đầu tiên phải đăng nhập vào chương trình

1

Ở trang làm việc, những thứ cần chú ý  gồm có hình trụ ở góc trái của màn hình làm việc(work space), ở đó là Database Root, tiếp đến là Folder, và rồi bên trong folder là Project, thanh bar phía trên hiển thị location of current selection. Hình phía dưới hiển thị Default Workbench của DOORS.

 

2

Click chuột phải vào icon project để tạo ra một formal module mới, bạn cũng có thể chọn template ở đây bằng cách click chuột trái vào browse icon.

3

Sau khi các bạn tạo ra formal module cho riêng mình, chuột phải vào module đó để tạo ra một object mới. Các bạn cũng có thể dùng phím tắt để làm điều tương tự.

4

Hình phía dưới giải thích những vị trí của objects, gồm có level1 object, level2 objects là con của level1 object. Ở bên trái là ID của objects.

5

Click chuột phải vào level2 object sau đó click vào properties để thêm text vào object.

6

Đây là access của một object, bạn có thể chọn bằng cách bấm qua chọn access bên cạnh general.

7

Bạn cũng có thể thêm table từ table menu dưới mỗi object, khi add table bạn có thể set hàng và cột. Sau khi add table xong thì sẽ như hình sau.

9

Chúng ta có thể thêm filter bằng cách click chuột vào biểu tượng filter properties.

10.PNG

Thêm một object mới bằng cách click chuột phải vào một object chọn Link, start Link. Sau đó click một cái object Link mới, chọn link from start để hoàn thành quá trình link.

Để tạo ra một document, chọn File -> Export -> Document Generation như hình bên dưới.

11