Thuật toán phát triển vùng được thực hiện trong lớp pcl::RegionGrowing. Mục đích của thuật toán là hợp nhất các điểm có đủ gần về các rằng buộc độ mịn. Qua đó đầu ra của thuật toán này là tập hợp các phần vùng là một tập các điểm được coi là một phần của bề mặt cùng độ mịn. Thuật toán này dựa vào vệc so sánh các góc giữa pháp tuyến điểm.
Nguyên lý của thuật toán.
Trước tiên, thuật toán sẽ sắp xếp các điểm theo giá trị độ cong của chúng. Nó cần được thực hiện bởi vì vùng bắt đầu phát triển từ các điểm có giá trị độ cong tối thiểu. Lý do cho điều này là cá điểm có độ cong nhỏ nhất nằm trong khu vực bằng phẳng (tăng trưởng trong khu vực bằng phẳng cho phép đểm giảm tổng số vùng).
Do đó ta có các đám mấy được sắp xếp. Cho đến khi những điểm không được đánh nhãn trong các đám mây, thuật toán nhặt các điểm với giá trị độ cong nhỏ nhất và bắt đầu sự phát triểm của vùng. Quá trình này xảy ra như sau:
Điểm được nhặt được thêm vào tập được gọi là hạt giống.
Với tất cả các thuật toán tìm điểm giống các điểm lân cận.
o Mỗi điểm lân cần được kiểm thử với góc giữa điểm bình thường và các điểm hạt giống hiện tại của nó. Nếu góc thấp hơn giá trị ngưỡng thì điểm hiện tại được thêm vào khu vực hiện tại.
o Sau đó mọi điểm lân cận được kiểm thử cho giá trị độ cong. Nếu độ cong nhỏ hơn giá trị ngưỡng thì điểm này sẽ được thêm vào hạt giống. o Hạt giống hiện tại đươc lấy ra từ các điểm hạt.
Nếu tập các hạt trở nên trống thì có nghĩa là thuật toán đã phát triển vùng và quá trình này được lặp lại từ đầu.
Việc thực hiện tìm những điểm giả được mô tả bằng thuật toán dưới đây:
Thông tin đầu vào:
Point cloud =
Point normals =
Points curvatures =
Neighbour finding function
Curvature threshold
Khởi tạo:
Region list
Available points list
Thuật toán:
While is not empty do
o Current region
o Current seeds
o Point with minimum curvature in
o o o
o for to size ( ) do
Find nearest neighbours of current seed point
for to size ( ) do
Current neighbour point
If contains and then If then end if end if end for o end for
end while
Return
Bảng 4.5: Bảng mô tả thuật toán phát triển lân cận
Hình ảnh mô tả
Hình 4.2: Kết quả phân vùng ảnh theo phương pháp region growin
Trên hình ảnh này ta có thể thấy rằng màu sắc của đám mây có nhiều điểm mày đỏ. Điều này có nghĩa là những điểm này thuộc về nhóm bị từ chối bởi chúng cho có quá ít các điểm.