1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad

67 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • Phần I. Mở đầu (9)
  • Phần II. Các Nghiên Cứu Liên Quan (11)
    • 1. Hướng tiếp cận dựa trên tổng thể bản vẽ (11)
    • 2. Hướng tiếp cận dựa trên bộ miêu tả các hình dạng trong bản vẽ (shape descriptor) (12)
    • 3. Hướng tiếp cận dựa trên quan hệ không gian giữa các phần tử trong bản vẽ (spatial relationship) (13)
  • Phần III. Lý Thuyết Nền Tảng (15)
    • 1. Lý thuyết về độ tương tự của bản vẽ và phương pháp tiếp cận của luận văn: 9 2. Lý thuyết về bản vẽ số AutoCad (15)
    • 3. Lý thuyết về quan hệ thứ tự toàn bộ giữa các đoạn thẳng (20)
    • 4. Lý thuyết cơ sở chu trình tối thiểu của đồ thị (21)
    • 5. Ý nghĩa của đặc trưng hình học của mỗi polygon (23)
    • 6. Lý thuyết quan hệ topology giữa các phần tử (24)
    • 7. Khái niệm về đồ thị topology các cấp chi tiết của bản vẽ và các đồ thị con 20 8. Phổ đồ thị (26)
  • Phần IV. NỘI DUNG THỰC HIỆN LUẬN VĂN (30)
    • 1. Tổng quát về giải thuật chương trình (30)
    • 2. Chi tiết giải thuật (31)
  • Phần V. Thí Nghiệm (53)
    • 1. Các thí nghiệm đánh giá chức năng kiểm tra mức độ tương quan dựa trên topology (53)
    • 2. Các thí nghiệm đánh giá chức năng kiểm tra mức độ tương quan dựa trên đặc trưng hình học (55)
    • 3. Các thí nghiệm đánh giá chức năng kiểm tra mức độ tương quan tổng hợp:51 Phần VI. Kết Luận (57)
  • Phần VII. Danh mục các tài liệu tham khảo (60)
  • Phần VIII. Phụ lục (64)

Nội dung

Chương trình kế thừa phương pháp đánh giá độ tương tự của các bài báo khoa học trước, trước hết xây dựng đồ thị topology của các polygon trong bản vẽ và đánh giá tương tự về topology, sa

Các Nghiên Cứu Liên Quan

Hướng tiếp cận dựa trên tổng thể bản vẽ

Hướng tiếp cận này dựa vào toàn bộ các đối tượng trên bản vẽ để rút ra đặc trưng bản vẽ Tất cả các thành phần trong bản vẽ đều đóng góp vào việc xây dựng bộ miêu tả đặc trưng này Thay đổi thành phần trong bản vẽ làm thay đổi bộ miêu tả đặc trưng bản vẽ Việc so trùng bản vẽ được tiến hành dựa trên việc so trùng bộ miêu tả đặc trưng Và vì tính chất của hướng tiếp cận này nên việc so trùng một phần bản vẽ không được hỗ trợ vì không có bộ miêu tả đặc trưng cho từng phần của bản vẽ

Pu và Ramani [23] đưa ra hai phương pháp so trùng bản vẽ bằng phép biến đổi điều hòa tọa độ cầu trong không gian 2.5 chiều (2.5D spherical harmony transformation) và phương pháp histogram các hình 2 chiều (2D shape histogram)

Phương pháp 2.5D spherical harmony transformation sử dụng kết quả từ nghiên cứu của Kazhdan và các cộng sự trong [16] Nghiên cứu trước đó của Kazhdan sử dụng phương pháp xấp xỉ gần đúng một hình khối 3 chiều trong hệ tọa độ cầu bằng các thành phần điều hòa có tần số khác nhau để từ đó rút ra được bộ mô tả đặc trưng cho một hình khối 3 chiều, mà theo bài nghiên cứu là bền vững theo phép quay (rotation invariant) Pu và Ramani đã ứng dụng linh hoạt phương pháp này vào việc đưa ra bộ mô tả đặc trưng cho các hình vẽ 2D Sau khi phân tích một nghiên cứu có liên quan khác của Funkhouser và các đồng sự trong [13] Pu và Ramani đã nhận thấy được nhược điểm của phương pháp này khi áp dụng lên các hình 2D và quyết định cải tiến các hình 2D thành 2.5D theo phép biến đổi của riêng họ Phương pháp này được đánh giá là bất biến với phép quay và phép tỉ lệ và là một bộ mô tả đặc trưng hình học gọn nhẹ cho bản vẽ số Ngoài ra các kết quả trong bài nghiên cứu còn cho thấy sự chính xác cao khi sử dụng chung với phương pháp thứ 2, phương pháp 2D shape histogram

Phương pháp 2D shape histogram dựa trên nội dung của toàn bộ bản vẽ để xây dựng một biểu đồ khoảng cách giữa các cặp điểm được sinh ngẫu nhiên và phân bố đều trên

6 toàn bộ bản vẽ Nghiên cứu này dựa trên một nghiên cứu của Osada và Funkhouser trong [21] áp dụng lên mô hình khối 3D được Pu và Ramani chỉnh sửa cho phù hợp với hình học 2 chiều Bước đầu tiên, bản vẽ được phân tích thành các thành phần cơ bản là đoạn thẳng, kể cả xấp xỉ gần đúng các cung tròn thành nhiều đoạn thẳng liên tục Sau đó sinh ngẫu nhiên các cặp mẫu và tính khoảng cách giữa các cặp mẫu này và ghi vào một mảng A, chính là histogram của bản vẽ Cuối cùng sử dụng hàm tính khoảng cách Minkovski để tính độ tương tự giữa hai histogram này Phương pháp này được đánh giá là đơn giản, nhanh chóng và chống được nhiễu, ngoài ra còn bất biến với các phép biến đổi đơn giản và phép biến đổi affine [23] Ngoài ra để tăng tính chính xác trên một số điểm cần đi sâu vào chi tiết, phương pháp này còn cho phép sinh mẫu ngẫu nhiên theo phân bố dự tính trước

Frọnti và Mednonogov trong [12] giới thiệu hướng tiếp cận biến đổi Hough (Hough transform), trên bản vẽ đường kẻ (line-drawing) Bài nghiên cứu thực hiện biến đổi

Hough trên toàn bộ bản vẽ để đưa bản vẽ về không gian hệ số góc và điểm cắt trục Để so sánh tương quan bản vẽ, bài nghiên cứu tiến hành so sánh tương quan giữa hai ma trận biến đổi này Phương pháp Hough transform bất biến theo phép quay và phép tỉ lệ, tuy nhiên đây là giải thuật vét cạn, để thực hiện phương pháp này, khối lượng tính toán rất lớn và không hiệu quả theo thời gian thực, theo nhận xét của Kazhdan và Funkhouser trong [16]

Hướng tiếp cận dựa trên bộ miêu tả các hình dạng trong bản vẽ (shape descriptor)

Hướng tiếp cận dựa trên bộ miêu tả hình 2D (2D shape descriptor) trong bản vẽ bao gồm nhiều phương pháp, dựa trên đường viền của hình 2D (2D shape contour) hay dựa trên bộ miêu tả shape context là hai phương pháp thông dụng

Mehrotra và Gary [18] phát triển hướng ngiên cứu so trùng đường viền vật thể hình học từ rất sớm vào năm 1993, sau đó được Berchtold và Kriegel áp dụng và cải tiến thành một thuật toán trong hệ thống tìm kiếm S3 của mình trong [3] Và nổi bật trong phương pháp xây dựng shape contour có bài nghiên cứu [15] của Hou và Ramani Các đường viền của các hình khối trong bản vẽ được xác định và thể hiện bằng các polygon

Các điểm đặc trưng trên polygon được rút trích và được so sánh lần lượt với các điểm đặc trưng của bàn vẽ cần được so sánh Sau đó rút ra được sự tương quan giữa các điểm với nhau Bước cuối cùng, Hou và Ramani sử dụng các đặc trưng hình học tại mỗi điểm như đặc trưng shape context hay đặc trưng góc quay để tiến hành đánh giá mức độ tương quan giữa hai bản vẽ Các kết quả thí nghiệm được bài báo đánh giá là tốt hơn so với các kết quả trước đó, nhưng đặc biệt phương pháp của Hou và Ramani ngoài tính bất biến đối với các phép biến đổi đơn giản còn có khả năng loại bỏ cao các

7 yếu tố biến dạng đơn giản của các chi tiết cơ khí Một đặc trưng mang ý nghĩa lớn trong lĩnh vực cơ khí

Belongie trong [1] phát triển theo phương pháp ngữ nghĩa hình học (shape context)

Theo đó một vật thể hình 2D được phân tích thành tập hợp các điểm phân bố đều dọc theo đường biên của hình Ứng với mỗi điểm Belongie định nghĩa một chỉ số shape context của điểm đó Chỉ số shape context của một điểm mang ý nghĩa thể hiện khoảng cách tương đối giữa điểm đang xét đến tất cả các điểm thuộc về vật thể đó, và vì thế thể hiện được đặc trưng của vật thể Chỉ số shape context được tính bằng cách lấy đồ thị

K-bin histogram tại điểm đang xét Và để so sánh mức độ tương quan giữa điểm này với một điểm trên vật cần so sánh, Belongie đánh giá chỉ số khoảng cách thống kê  2 giữa hai đồ thị histogram đó Phương pháp của Belongie ổn định và bất biến theo phép quay, phép tịnh tiến và phép tỉ lệ vì shape context của từng điểm trên vật thể hình học chỉ phụ thuộc vào các điểm khác cùng thuộc vật thể đó Cách tính đơn giản và có thể biểu diễn khá chi tiết đặc trưng của một vật thể, tuy nhiên chi phí để thực hiện tính toán độ tương đồng khá cao O(N 3 )

Ngoài ra, phương pháp so sánh đặc trưng vật thể hình học còn được áp dụng trên các hình khối 3D theo hướng tiếp cận dựa trên góc nhìn vật thể (view-based) của Chen và

Tian trong [4] Mỗi vật thể 3D được chụp từ nhiều góc độ khác nhau và để so sánh sự tương đồng giữa 2 khối vật thể các hình chụp này được so sánh với nhau và rút ra mức độ giống nhau giữa 2 vật thể.

Hướng tiếp cận dựa trên quan hệ không gian giữa các phần tử trong bản vẽ (spatial relationship)

Park và Um trong [22] đã kết hợp giữa phương pháp phân tích các vật thể hình học 2D dựa vào đường viền Sau đó phân rã các vật thể thu được thành các thành phần gồm vật thể chiếm ưu thế và các vật thể phụ trợ với quan hệ tương quan không gian giữa các vật thể đó theo 2 quan hệ là quan hệ cộng hình học và quan hệ trừ hình học (spatial addition and subtraction) Các thành phần này được đưa vào một đồ thị phức tạp và đưa bài toán so trùng bản vẽ thành bài toán so trùng đồ thị Giải thuật so trùng đồ thị của Park và Um được nhận xét là không hiệu quả theo như [9] đánh giá

Năm 2003, Fonseca và Jorge trong [11] đã phát triển phương pháp tương quan không gian giữa các polygon trong bản vẽ dựa vào 2 quan hệ không gian được nhắc đến trong nghiên cứu của Egenhofer [6] là quan hệ Inclusion và và Adjacency, từ đó rút ra đồ thị tương quan và tiến hành so trùng bản vẽ Để tăng tốc độ truy hồi bản vẽ Fonseca còn phát triển một phương pháp đánh chỉ mục trên đặc trưng đồ thị topology trong [11] Năm 2005 Fonseca kết hợp phương pháp so sánh đồ thị topology với đặc trưng hình học của từng polygon thành phần trong đồ thị [10] Đến năm 2010 Fonseca

8 thêm vào đồ thị của mình trọng số chỉ mức độ lân cận của các polygon trong đồ thị nhằm tăng thêm sự chính xác cho phép so sánh bản vẽ [26] Phương pháp của Fonseca có thể tiến hành so trùng các chi tiết thành phần trong bản vẽ Một ứng dụng khá quan trọng trong việc tìm kiếm các chi tiết cơ khí

Lý Thuyết Nền Tảng

Lý thuyết về độ tương tự của bản vẽ và phương pháp tiếp cận của luận văn: 9 2 Lý thuyết về bản vẽ số AutoCad

Để tìm hiểu khái niệm độ tương tự giữa các bản vẽ, trước hết chúng ta cùng tìm hiểu khái niệm độ tương tự giữa các hình dạng vật thể (shape) trong bản vẽ, từ đó rút ra độ tương tự của các bản vẽ và cuối cùng ta xét những yếu tố ảnh hưởng đến độ tương tự của bản vẽ khi bản vẽ bị gian lận a Độ tương tự của các hình dạng vật thể (Shape Similarity): Định nghĩa về hình dạng theo trang wikipedia như sau:

Hình dạng vật thể (shape) là hình thù của vật thể hay là hình thù của đường biên của vật thể Khái niệm hình dạng để phân biệt với các đặc tính khác của vật thể như màu sắc, bề mặt, chất liệu của vật thể Để định nghĩa hình dạng vật thể trong giới hạn phương pháp của luận văn Trước hết ta tìm hiểu các khái niệm liên quan đến miền kín trong hình học topology trong [6] Đối với một tập A bất kì trong không gian ta có:

 Miền trong của A, kí hiệu A o ,là hợp của tất cả các tập mở trong A

 Bao đóng của A, kí hiệu , là giao của tất cả các tập đóng trong A

 Miền ngoài của A, kí hiệu A – đối với không gian R 2 , là tất cả các điểm A o

 Đường biên của A, kí hiệu ∂A là giao của bao đóng của miền ngoài của A và bao đóng của miền trong của A

Hình dạng vật thể đang xét được định nghĩa theo hình học topo như sau: Hình dạng của A được thể hiện bởi tất cả các điểm ∂A

Hai hình dạng A, B được coi là tương tự nhau nếu D(A,B) < Với D là một hàm đo độ khác biệt và là một ngưỡng nào đó Khi độ khác biệt giữa A và B nhỏ hơn một giá trị ngưỡng nào đó ta có thể kết luận A, B tương tự nhau

Veltkamp [32] đưa ra những tính chất nên có của một hàm D đo độ khác biệt trên tập hợp S Với hàm các tính chất sau phải thỏa với tất cả các hình dạng A, B, C thuộc S:

 Tính metric: Đối với một tập các hình dạng vật thể S, hàm D: S x S R phải thỏa: o Tính không âm D(A;B) ≥ 0 o Tính thống nhất D(A;A) = 0 o Tính duy nhất D(A;B) = 0  A = B o Và thỏa bất đẳng thức tam giác: D(A;B) + D(B;C) ≥ D(A;C)

 Tính liên tục: là tính bền vững với các nhiễu rời rạc

 Tính bất biến: đối với một số biến đổi đơn giản

Trong trường hợp giống nhau bộ phận hàm xác định độ khác biệt D không thỏa được tính chất bất đẳng thức tam giác như ví dụ trong [32] Vì thế Veltkamp đề xuất tính chất bất đẳng thức tam giác mở rộng cho trường hợp so sánh bộ phận do Fagin và cộng sự đưa ra trong [33]: c(D(A;B) + D(B;C)) ≥ D(A;C) với c là một hằng số không quá lớn

Fagin và cộng sự đã chứng minh phương pháp đo vẫn hiệu quả dù không thỏa bất đẳng thức tam giác nhưng thỏa bất đẳng thức tam giác mở rộng, cụ thể là phương pháp đo độ chênh lệch giữa các hình dạng trong IMB’s QBIC b Độ tương tự của bản vẽ cơ khí:

Bản vẽ kĩ thuật trong lĩnh vực cơ khí được xây dựng dựa trên việc kết hợp giữa các chi tiết Hình dạng của một chi tiết cơ khí lại là sự kết hợp và sắp xếp các hình dạng vật thể khác nhau theo bố cục và vị trí nhất định để thể hiện một chi tiết Một bản vẽ kĩ thuật sẽ bao gồm nhiều chi tiết, rời rạc hay kết hợp với nhau để tạo thành tổng thể bản vẽ

Vì tính chất trên, hai bản vẽ kĩ thuật được coi là tương đồng khi và chỉ khi cả hai điều kiện sau phải thỏa:

1 Tương đồng về cách bố trí các đối tượng hình học trong bản vẽ 2 Tương đồng về hình dạng các đối tượng hình học trong bản vẽ

Hàm đo sự khác biệt D(BV 1 ;BV 2 ) là hàm tổng hợp được tính chất của hai điều kiện này c Các yếu tố gian lận trong bản vẽ cơ khí:

Quá trình gian lận trong bản vẽ cơ khí có thể được thực hiện với các biến đổi trên bản vẽ gốc như sau:

11 1 Các phép biến đổi cơ bản không làm ảnh hưởng đến hình dạng của vật thể như: phép xoay, phép tỉ lệ đồng dạng, phép tịnh tiến toàn bộ bản vẽ gốc, hay các phần không liên quan của bản vẽ gốc Ngoài ra còn có phép đối xứng Mô tả như trong hình 1

2 Thêm nhiễu vào bản vẽ để đạt được chi tiết mới không quá khác so với chi tiết cũ và đảm bảo tính sử dụng được cho chi tiết đó Mô tả như trong hình 1

3 Đánh cắp một phần từ bản vẽ gốc Xét về tổng thể 2 bản vẽ là khác biệt, nhưng chi tiết quan trọng trong bản vẽ này lại giống chi tiết quan trong trong bản vẽ gốc

Hình 1: Các phép biến đổi cơ bản từ bản vẽ gốc A qua phép quay ta được hình B, qua phép tỉ lệ đồng dạng ta được hình C, qua phép đối xứng ta được hình D và phép thêm nhiễu nhỏ nhưng vẫn không ảnh hường đến đặc trưng ta được hình E

Hình 2: Mô tả việc đánh cắp một phần từ bản vẽ gốc, một phần từ bản vẽ A được sao chép qua bản vẽ B Nhìn tổng thể hai bản vẽ là hoàn toàn khác biệt

Từ các đặc điểm trên, phương pháp xác định sự chênh lệch giữa các bản vẽ để rút ra sự gian lận phải thỏa các tính chất được nêu trong bảng 1:

1 Tính metric với bất đẳng thức mở rộng 2 Tính bất biến với các phép biến đổi đơn giản 3 Tính bất biến với nhiễu nhỏ

4 Tính so sánh từng phần 5 Vừa đánh giá được tính tương đồng về cách bố trí các vật thể trong bản vẽ, vừa đánh giá được tính tương đồng về hình dạng giữa các vật thể

Bảng 1: Các tính chất cần có của một phương pháp xác định độ chênh lệch giữa các bản vẽ

Lý thuyết về quan hệ thứ tự toàn bộ giữa các đoạn thẳng

Đây là lý thuyết được Shamos và Hoey [24] định nghĩa và được sử dụng trong giải thuật quét để xác định giao điểm của Bentley và Ottmann [2] Khái niệm quan hệ thứ tự giữa các đoạn thẳng trong mặt phẳng tọa độ Descartes tại tọa độ x = u như sau:

Hai đoạn thẳng được coi là có thể so sánh được nếu giả sử có một đường thẳng đứng u cắt 2 đoạn thẳng l 1 và l 2 tại hai điểm U 1 và U 2 như hình 3 Ta nói 2 đoạn thẳng l 1 và l 2 có thể so sánh được với nhau tại u

Khi đó l1 gọi là nằm trên l 2 tại u kí hiệu là nếu y U1 > y U2

Quan hệ thứ tự trên dưới này là quan hệ thứ tự toàn bộ do tọa độ y là tọa độ số thực có quan hệ thứ tự toàn bộ Khi đường thẳng đứng u quét dọc theo trục x, ứng với mỗi giá trị u bất kì các đoạn thẳng có giao điểm với u tạo thành dãy thứ tự toàn bộ theo trục

Y Dãy thứ tự này thay đổi khi:

 u đi ngang qua điểm bắt đầu của đoạn thẳng Đoạn thẳng tham gia vào dãy thứ tự toàn bộ theo trục Y

 u đi ngang qua điểm kết thúc của đoạn thẳng Đoạn thẳng ra khỏi dãy thứ tự toàn bộ theo trục Y

 u đi ngang qua điểm giao nhau giữa 2 đoạn thẳng

Shamos và Hoey đã đưa ra nhận xét quan trọng về thứ tự của l1 và l 2

Hình 3: Quan hệ thứ tự của các đoạn thẳng theo phương thẳng đứng trên hình : , , ,

Lý thuyết cơ sở chu trình tối thiểu của đồ thị

Sau đây chúng ta sẽ tìm hiểu lý thuyết về chu trình cơ sở tối thiểu được áp dụng trong giải thuật Horton [14]

Cho đồ thị đơn vô hướng G(V,E) có E = {u 1 , u 2 , u 3 … u n } Một chu trình C trong đồ thị có thể được biểu diển bằng tập các cạnh trên đường đi tạo thành chu trình đó theo một vectơ n chiều như sau

Theo đó độ dài của chu trình được tính LC = Định nghĩa tổng của hai chu trình C = C’ + C’’ được thực hiện theo hiệu đối xứng (symmetric difference) của hai chu trình:

Có thể coi tổng của hai chu trình như tổng của 2 vector n chiều lấy modulo 2 cho từng tọa độ Và xét sự độc lập tuyến tính của các chu trình có thể thực hiện tương tự như xét độc lập tuyến tính của các vector theo cách trên

Một cơ sở chu trình của một đồ thị vô hướng là tập hợp tối thiểu tất cả các chu trình đơn giản sinh ra từ đồ thị mà từ các chu trình này có thể biểu diễn được tất cả các chu trình Euler của đồ thị đó, hay nói cách khác bất kì chu trình Euler của đồ thị đó có thể được biểu diển bằng tổng hơp tuyến tính của các chu trình trong cơ sở chu trình Các chu trình trong cơ sở chu trình gọi là chu trình cơ sở của đồ thị

Bài toán đi tìm cơ sở chu trình tối thiểu của đồ thị là bài toán tìm kiếm cơ sở chu trình sao cho min

Tính đúng đắn của giải thuật Horton dựa trên bổ đề và các định lý được Horton nhắc đến như sau:

Bổ đề: Nếu B là cơ sở chu trình của một đồ thị G, và C là chu trình, C  B  C = C 1 + C 2 thì tập hợp chu trình (B \ {C})  {C 1 } hay tập hợp (B \ {C})  {C 2 } cũng là một

Nếu l 1 và l 2 cắt nhau, tồn tại giá trị t sao cho tại t l 1 và l 2 nằm cạnh nhau trong dãy thứ tự toàn bộ theo trục Y

16 chu trình cơ sở của đồ thị G Hay nói cách khác thay C bằng C 1 hay C 2 ta có thể tạo nên một cơ sở chu trình mới

Chứng minh: do B là cơ sở chu trình của đồ thị G C 1 và C 2 đều có thể được tổ hợp từ B và gọi 2 tập hợp chu trình A 1 , A 2 là hai tổ hợp nên C 1 C 2 , hai tổ hợp này là duy nhất Từ giả thiết C = C 1 + C 2 C 1 (tổ hợp từ A 1 ) = C + C 2 = C + (tổ hợp từ A 2 ) Như vậy A1 và A 2 khác nhau chỉ ở việc một tập hợp có bao gồm C Giả sử C 

A 1 Như vậy tập hợp B \ {C} tổ hợp được A 2 Như vậy tập hợp (B \ {C})  C 1 có thể tổ hợp tất cả các chu trình trong G Như vậy (B \ {C})  C 1 cũng là một chu trình cơ sở của G Định lý 1: một cơ sở chu trình tốt thiểu luôn bao gồm các chu trình đơn

Chứng minh: Giả sử B là một cơ sở chu trình tối thiểu và giả sử tồn tại C là một chu trình không đơn thuộc B C bao gồm một chu trình đơn C 1 và C = C 1 + C 2 = C 1  C 2 với C 2 là một chu trình tổng quát Giả sử tất cả các cạnh đều có trọng số dương, 0

< L(C 1 ) < L(C), và 0 < L(C 2 ) = L(C) – L(C 1 ) < L(C) B’ = (B \ {C})  {Ci} và B’ có trọng số nhỏ hơn B C phải là chu trình đơn

Gọi P(x,y) là đường đi ngắn nhất nối 2 đỉnh x và y trong đồ thị G Định lý 2: gọi x và y là hai đỉnh thuộc chu trình C trong cơ sở chu trình tối thiểu B của đồ thị G P(x,y)  C

Chứng minh: Giả sử P(x,y)  C Gọi P 1 và P 2 là hai đường đi nối x và y trong C P 1  P và P 2  P Định nghĩa C 1 = P(x,y) + P 1 , C 2 = P(x,y) + P 2 C 1 và C 2 là 2 chu trình và C = C 1 + C 2 Và lưu ý là L(C i )  L(P(x,y)) + L(P i )  L(P 1 ) + L(P 2 ) = L(C)

Theo bổ đề trên, B’ = (B \ {C})  {C i } cũng là một cơ sở chu trình của đồ thị G và ta có B’ có trọng số nhỏ hơn B vậy P(x,y)  C Định lý 3: gọi x đỉnh thuộc chu trình C trong cơ sở chu trình tối thiểu B của đồ thị G

Chứng minh: C = (x 0 , x 1 , x 2 …,x n ), với x = x 0 = x n Định nghĩa P i là đường đi từ x 0 P i (x 0 ,x 1 , x i ) và Q i là đường đi ngược (x 0 ,x n-1 ,x n-2 … x i ) Theo định lý 2, đường đi ngắn nhất đến x i từ x 0 P(x,x i ) = P i hay Q i Trường hợp P(x,x i ) = P i và với 1ji ta cũng có P(x,x j ) = P j vì một đường đi con của đường đi ngắn nhất cũng là một đường đi ngắn nhất Tương tự với trường hợp P(x,xi) = Q i và n>ji ta có P(x,x j ) = Q j Chọn y = x i , x i là đỉnh xa nhất so với x vẫn thỏa P(x,x i ) = P i , và z = x i +1 lúc đó P(x,y) + (y,z) + P(x,z) = P i + (x i ,x i+1 ) + Q i+1

17 Từ các bổ đề và định lý nêu trên đã tạo cơ sở lý thuyết cho tính đúng đắn của giải thuật xác định cơ sở chu trình của Horton.

Ý nghĩa của đặc trưng hình học của mỗi polygon

Các chỉ số đặc trưng hình học của Fonseca [9] đưa ra trong mô hình vec tơ đặc trưng hình học của mỗi polygon đều mang một ý nghĩa nhất định Điều dễ nhận thấy ở các chỉ số này là: các chỉ số đều là số tỉ lệ giữa các đơn vị tương đương, độ dài chia cho độ dài, diện tích chia cho diện tích, và không phụ thuộc vào vị trí của polygon trong không gian, vì thế đặc tính có thể nhận ra được là các chỉ số này bất biến theo các phép biến đổi đơn giản như: phép tỉ lệ, phép quay, phép tịnh tiến Vectơ đặc trưng hình học của polygon được định nghĩa:

 A ch : Diện tích bao lồi của polygon

 Aer : Diện tích hình chữ nhật ngoại tiếp có diện tích nhỏ nhất

 Alq : Diện tích tứ giác nội tiếp có diện tích lớn nhất

 Alt : Diện tích tam giác nội tiếp có diện tích lớn nhất

 H er : Chiều cao hình chữ nhật ngoại tiếp có diện tích nhỏ nhất

 P ch : Chu vi bao lồi

 Per : Chu vi hình chữ nhật ngoại tiếp có diện tích nhỏ nhất

 Plq : Chu vi tứ giác nội tiếp diện tích lớn nhất

 Plt : Chu vi tam giác nội tiếp diện tích lớn nhất

 T t : Tổng chiều dài của polygon ban đầu

 W er : Chiều rộng hình chữ nhật ngoại tiếp

Trong [31] Fonseca và Jorge đã làm rõ các tính chất của các chỉ số này như sau:

 : chỉ số mức độ phức tạp của polygon Polygon càng phức tạp chỉ số càng thấp

Polygon đơn giản khi bao lồi của polygon trùng với polygon

: Chỉ số thinness ratio, chỉ số này để phân biệt đường tròn so với các đường khác, nếu polygon có dạng gần giống hình tròn thì chỉ số thinness ration sẽ tiến tới cực tiểu

: Tỉ lệ về chiều cao và chiều dài của convex hull

: Chỉ số này đóng vai trò thứ yếu trong việc phân biệt dạng hình chữ nhật so với các dạng hình khác Tỉ lệ sẽ có giá trị gần như bằng 1 khi polygon có dạng chữ nhật

: Chỉ số này là chỉ số chủ yếu giúp phân biệt dạng hình chữ nhật so với các dạng hình khác Tỉ lệ sẽ có giá trị gần như bằng 1 khi polygon có dạng gần với hình chữ nhật

: Chỉ số này giúp phân biệt elipse với các dạng hình khác Chỉ số này sẽ tiến tới 0.7 khi polygon tiến tới dạng hình elipse và cao hơn nếu polygon có dạng hình khác

: Chỉ số này giúp phân biệt hình thoi so với các dạng hình khác Chỉ số này có giá trị từ 0.5 đến 0.6 nếu polygon có dạng gần với hình thoi và sẽ lớn hơn với dạng khác

: Chỉ số này giúp phân biệt tam giác so với các dạng hình khác Chỉ số sẽ tiến đến 1 khi polygon có dạng gần giống với tam giác

: Chỉ số này giúp phân biệt tam giác so với các dạng hình khác Chỉ số sẽ tiến đến 1 khi polygon có dạng gần giống với tam giác

: Chỉ số này là chỉ số chủ yếu giúp phân biệt dạng hình chữ nhật so với các dạng hình khác Tỉ lệ sẽ có giá trị gần như bằng 1 khi polygon có dạng gần với hình chữ nhật.

Lý thuyết quan hệ topology giữa các phần tử

Gọi A và B là hai polygon trong không gian Ứng với khái niệm miền trong, miền ngoài và đường biên đã định nghĩa ở phần 1 Ta có ma trận 9 mối quan hệ được xây dựng trên mối quan hệ giữa các miền của polygon A và B như sau:

Kí hiệu  để chỉ tập hợp rỗng và  để chỉ tập hợp khác rỗng Ta có các mối quan hệ topology được thể hiện trên hình 4 ứng với từng trạng thái của M như sau:

19 Theo Egenhofer, đối với 2 miền kín trong không gian R 2 tồn tại một và duy nhất một mối quan hệ trên Đồ thị lân cận cho mối các mối quan hệ topology trên được mô tả như hình 5a Hướng nghiên cứu của Fonseca chỉ giới hạn trong các mối quan hệ disjoint, include, adjacent và được rút ra từ Egenhofer như hình 5b

Hình 5 a) 8 mối quan hệ topology của Egenhofer b) Quan hệ Adjacent và Includes tương đương với các quan hệ trong Egenhofer

Dựa theo sự đơn giản hóa trên Fonseca đưa ra định nghĩa về các quan hệ topology như sau a) b)

Hình 4: Các mối quan hệ không gian theo Egenhofer

 Nếu polygon P1 chứa hoàn toàn polygon P2 hay, P1 bằng đúng P2 thì polygon P1 được coi là chứa P2 P1 Includes P2

 Nếu hai polygon có cạnh chung thì 2 polygon đó được coi là kế cận nhau : Adjacent

 Nếu không có điểm cắt nhau nào giữa 2 polygon P1 và P2 Hai polygon được coi như tách biệt nhau : Disjoint.

Khái niệm về đồ thị topology các cấp chi tiết của bản vẽ và các đồ thị con 20 8 Phổ đồ thị

Theo các quan hệ topology ở trên Fonseca đưa ra định nghĩa về đồ thị topology:

 Đồ thị topology G(V,I,A) là đồ thị giống như một cây trong đó V là một tập hữu hạn và không rỗng chứa các node của đồ thị, mỗi node là đại diện cho một polygon thành phần trong bản vẽ I là tập các cạnh đại diện cho quan hệ Includes và A là tập các cạnh đại diện cho quan hệ Adjacent, các node thuộc cùng một cha có quan hệ disjoint nếu không có cạnh Adjacent giữa chúng Đồ thị topology được xây dựng từ một node gốc là đại diện cho toàn bản vẽ Các node con đầu tiên là các polygon không nằm trong polygon nào khác Các node kế tiếp bao gồm các polygon chứa trong các node đầu tiên

Quan hệ giữa node ở tầng trên so sới node ở dưới là quan hệ bao gồm, quan hệ của node tầng dưới với node tầng trên là quan hệ nằm trong Các node trên cùng 1 hàng có thể có quan hệ nằm cạnh Và cứ thế đi xuống dưới cho đến khi không còn polygon nào có chứa polygon nằm trong, một ví dụ của đồ thị topology ở hình 6

 Các cạnh includes kết nối các tầng kế tiếp của đồ thị với nhau

 Các cạnh Adjacent kết nối các node con trên cùng một tầng của đồ thị

 Đối với các node thuộc cùng một cha và không được kết nối bằng cạnh Adjacent thì sẽ có quan hệ Disjoint

Hình 6: Đồ thị topology rút ra được từ bản vẽ Để phục vụ cho việc so trùng từng phần chi tiết trong bản vẽ, Fonseca và các cộng sự trong [9] đã tiến hành chia đồ thị ra thành nhiều đồ thị con tương ứng với từng node

21 có chứa cạnh Include Và mỗi đồ thị con đó lại có nhiều lớp chi tiết tương ứng với từng bước đi xuống của quá trình xây dựng đồ thị Càng đi sâu xuống các lớp chi tiết bên dưới, bản vẽ càng chi tiết hơn Hình 7 & 8 nói cụ thể hơn về các lớp chi tiết trong đồ thị

Hình 7: Các chi tiết con và từng lớp chi tiết tương ứng

Hình 8: Các đồ thị con và lớp chi tiết tương ứng

Bài toán xác định hai đồ thị có đẳng cấu với nhau không là một bài toán NP- complete có thể chứng minh được từ bài toán tìm clique của đồ thị cũng là một bài toán NP-complete khác Để tăng tính hiệu quả trong việc thực hiện so trùng đồ thị, [9] đã thực hiện việc đánh giá tương tự giữa hai đồ thị bằng cách đánh giá mức độ sai lệch giữa các bộ mô tả đặc trưng cho đồ thị, ở đây bộ mô tả đặc trưng của đồ thị được sử dụng là phổ đồ thị, hay phổ của ma trận kề đồ thị được xây dựng từ các trị riêng của ma trận kề

Các giá trị riêng cho ma trận kề A của đồ thị được tính từ phương trình: det(A - I) = 0 Giải phương trình này ta có một bộ các giá trị riêng của đồ thị Do đồ thị là vô hướng nên ma trận kề đồ thị là đối xứng, vì thế các giá trị riêng này là số thực

Sắp xếp các giá trị riêng này theo trị tuyệt đối giảm dần ta có bộ miêu tả đặc trưng của đồ thị topology Các bước thực hiện được tiến hành theo sơ đồ trên hình 9:

Hình 9: Xây dựng bộ mô tả đặc trưng phổ đồ thị

Theo Fonseca [26] việc xây dựng bộ mô tả theo phương pháp này vẫn đảm bảo tính chính xác của việc so sánh tương tự 2 đồ thị topology, giá trị trị riêng lớn nhất của phổ đồ thị chứa đựng nhiều thông tin về đồ thị [5] và hơn nữa giá trị trị riêng lớn nhất này ổn định với các biến đổi nhỏ lên cấu trúc của hệ thống, dẫn đến vectơ đặc trưng của đồ thị cũng ổn định

Theo Fonseca nhận xét từ bài của Cvetkovic và cộng sự trong [5] và Shokoufandeh và cộng sự trong [25] phổ đồ thị là một bộ miêu tả có chức năng đáng tin cậy để đánh giá được mức độ tương tự giữa hai đồ thị Vì nó thể hiện được mối quan hệ topology giữa các thành phần cục bộ, khả năng bất biến với các thay đổi trong đồ thị con và tính ổn định vì các thay đổi nhỏ trong cấu trúc đồ thị ít làm ảnh hưởng đến phổ đồ thị

Phổ đồ thị tuy có tính bất biến nhưng không là bất biến hoàn toàn Khi hai đồ thị là đẳng cấu ta có phổ đồ thị của chúng giống nhau Nhưng khi hai đồ thị có phổ giống nhau ta không thể đưa ra kết luận chúng đẳng cấu Tuy nhiên theo lập luận và thực nghiệm của Shokoufandeh trong [25] và kiểm chứng bằng thực nghiệm trong Fonseca [9] cho thấy tần suất xuất hiện của hai đồ thị có cùng phổ nhưng không đẳng cấu xảy ra rất thấp Hơn nữa ngoài bước đánh giá quan hệ không gian của các thành phần polygon còn có bước đánh giá các đặc trưng hình học của các polygon này Ở trên là lý thuyết nền tảng làm cơ sở cho các giải thuật trong luận văn Phần tiếp theo chúng ta đi vào các giải thuật áp dụng trong luận văn

Hình vẽ Topology Ma trận kề đồ thị Trị riêng Bộ mô tả

NỘI DUNG THỰC HIỆN LUẬN VĂN

Tổng quát về giải thuật chương trình

Sơ đồ tổng quát của giải thuật chương trình gồm có các bước như trong hình 10

Trong đó đầu vào là các file bản vẽ dưới format dxf và một phần trăm sai lệch cho phép giữa 2 bản vẽ và đầu ra cuối cùng là kết luận về sự tương tự của hai bản vẽ và giá trị chênh lệch về topology và hình học Đầu ra của mỗi bước là đầu vào cho bước tiếp theo Nhiệm vụ của từng bước như sau:

1 Bước xử lý file bản vẽ đầu vào: Nhận đầu vào là file bản vẽ, có nhiệm vụ loại bỏ các chi tiết không liên quan đến dạng hình học của bản vẽ như các ghi chú, kích thước, khung tên v.v… Ngoài ra còn tiến hành xấp xỉ các cung tròn, hình tròn thành các đoạn thẳng làm đầu vào cho bước 2

2 Bước xác định điểm giao nhau: đầu vào là tập hợp tất cả các đoạn thẳng của bản vẽ, bước này có nhiệm vụ phân tích các điểm cắt nhau của bản vẽ để xây dựng đồ thị bao gồm tất cả các cạnh và các đỉnh của bản vẽ

Hình 10: Các bước tiến hành của chương trình

FILE BẢN VẼ ĐẦU VÀO, PHầN TRĂM SAI LệCH

BƯỚC XỬ LÝ FILE BẢN VẼ ĐẦU VÀO

GIẢI THUẬT XÁC ĐỊNH ĐIỂM GIAO

GIẢI THUẬT HORTON XÁC ĐỊNH

CHU TRÌNH CƠ SỞ TỐI THIỂU

XÁC ĐỊNH POLYGON THÀNH PHẦN

GIẢI THUẬT XÁC ĐỊNH QUAN HỆ INCLUSION VÀ ADJACENCY CỦA

TÍNH TOÁN PHỔ ĐỒ THỊ TOPOLOGY VÀ XÂY DỰNG HỆ THỐNG CHỈ

SO SÁNH DỰA TRÊN PHỔ ĐỒ THỊ VÀ ĐẶC TRƯNG HÌNH HỌC

GIÁ TRỊ ĐỘ SAI LỆCH D(BV 1 ;BV 2 )

25 3 Bước xác định chu trình cơ sở tối thiểu: đầu vào là đồ thị cạnh và đỉnh của bản vẽ, bước này tiến hành phân tích đồ thị thành các chu trình cơ sở làm cơ sở cho việc hình thành polygon cơ sở của bản vẽ

4 Xác định Polygon thành phần của bản vẽ: từ chu trình cơ sở của bản vẽ, bước này xác định các polygon thành phần của bản vẽ và tính toán các chỉ số đặc trưng hình học của polygon

5 Bước xác định quan hê inclusion và quan hệ adjacency của các polygon: bước này thực hiện giải thuật để xây dựng tất cả các đồ thị topology của bản vẽ dựa trên 3 quan hệ:

Disjoint, Inclusion và Adjacency Bao gồm đồ thị chính và các đồ thị con

6 Bước tính toán phổ đồ thị và xây dựng hệ thống chỉ mục cho các đồ thị con: bước này tính toán phổ đồ thị dựa trên trị riêng của ma trận kề có được từ các đồ thị topology trong bước 5 Xây dựng hệ thống chỉ mục để tăng tốc độ so sánh bản vẽ thành phần

7 Bước tiến hành so sánh: dựa vào phần trăm sai lệch cho phép và 2 bản vẽ đã được xử lý, bước này tiến hành so sánh 2 bản vẽ, kết quả của bước này là kết luận sự giống nhau và khác nhau giữa 2 bản vẽ, giá trị hàm đo độ chênh lệnh về topology và giá trị hàm đo độ chênh lệch về hình học giữa hai bản vẽ đầu vào

Phần tiếp theo sẽ đi chi tiết vào giải thuật của từng bước trên trong chương trình.

Chi tiết giải thuật

Phần này lần lượt đi vào chi tiết các giải thuật đã nêu ở phần trước Các giải thuật này được xây dựng dựa trên các lý thuyết nền tảng đã được đề cập đến trong phần trên a Giải thuật xử lý file bản vẽ đầu vào:

Sơ đồ giải thuật xử lý file bản vẽ đầu vào được mô tả như trong hình 11 Tất cả các hàm xử lý trong bước này đều nhằm vào mục đích đưa bản vẽ về các đoạn thẳng thành phần

Hình 11: Các bước xử lý file bản vẽ đầu vào

26 Hàm xử lý đoạn thẳng: các đoạn thẳng của bản vẽ được đưa trực tiếp vào tập đoạn thẳng đầu vào

Hàm xử lý polyline: lần lượt tạo ra các đoạn thẳng từ tập các đỉnh của polyline

Hàm xử lý đường tròn: Đối với đặc trưng của phương pháp xác định giao điểm, chỉ thực hiện trên các đoạn thẳng, ta phải tiến hành xấp xỉ đường tròn bằng n-gons Để đảm bảo đạt được sai số trong khoảng chấp nhận được ta phải xác định n phù hợp

Giả sử ta phải xấp xỉ đường tròn O(x O ,y O ) bán kính r với n-gons như hình 12

Xét hình quạt tạo bởi góc đơn vị ở tâm như ở hình 12

Diện tích của tam giác OAB được tính bởi công thức:

Diện tích n-gons : Area n-gons =

Phần trăm sai số theo diện tích: E = =

Hình 12: Xấp xỉ hình tròn bằng n-gons

27 Dựa vào đó ta nhận thấy, ứng với n = 26 sai số về diện tích của đường tròn so với polygon có 26 đỉnh là 0.97%, chấp nhận được so với chi tiết của bản vẽ Vậy ta chọn xấp xỉ đường tròn O(x O ,y O ) bán kính r với 26-gons

Tọa độ của đỉnh thứ n tính từ góc 0 được tính bởi công thức:

Hàm xử lý cung tròn Arc: Cung tròn là trường hợp đặc biệt của đường tròn được xác định bởi góc bắt đầu và góc kết thúc Với góc mở đơn vị tính theo hàm xử lý đường tròn, ta cũng có thể xấp xỉ cung tròn với sai số cho phép

Trong quá trình xử lý bản vẽ đầu vào, các đoạn chú thích, đường ghi kích thước được bỏ qua không đưa vào các bước tính toán và không góp phần vào tập đoạn thẳng đầu vào b Giải thuật xác định điểm giao nhau:

Giải thuật xác định điểm giao nhau và các đoạn thẳng hình thành từ các điểm giao nhau này được thực hiện theo hướng tiếp cận của Bentley-Ottmann [2] và được hiện thực theo [27] Mehlhorn Nọher đó thực hiện chương trỡnh dựng ngụn ngữ C++ và sử dụng thư viện LEDA, chương trình trong luận văn sử dụng ngôn ngữ Java và tự xây dựng các lớp đối tượng và cấu trúc dữ liệu riêng cho chương trình Lý thuyết đằng sau hướng tiếp cận giải thuật quét Bentley-Ottmann được Shamos và Hoey đề cập đến trong [24] để đi đến các bước trong giải thuật:

Xét đoạn thẳng AB Điểm A gọi là điểm bắt đầu của đoạn thẳng nếu

AB: A(x A , y A ), B(x B , y B ) (A là điếm bắt đầu) A ’ B ’ : A’(x A’ , y A’ ), B’(x B’ , y B’ ) (A’ là điểm bắt đầu) Ta nhận thấy nếu:

28 Như vậy điều kiện cần để AB và A’B’ cắt nhau khi 2 đoạn [x A ,x B ], [x A’ ,x B’ ] và

[y A ,y B ], [y A’ ,y B’ ] giao nhau Dựa vào đặc điểm trên ta có thể hạn chế số cặp đoạn thẳng để xét cắt nhau bằng cách xây dựng 2 dãy thứ tự theo hai trục x và y và chỉ xét các cặp đoạn thẳng có vùng chồng lấn giữa [xA,x B ], [x A’ ,x B’ ] và [y A ,y B ], [y A’ ,y B’ ] Đối với dãy thứ tự theo trục X ta sắp xếp các đoạn thẳng đầu vào theo chiều tăng dần của tọa độ điểm đầu, điểm cuối và điểm giao nhau giữa các đoạn thẳng Đối với dãy thự tự theo trục Y, gồm các đoạn thẳng có quan hệ thứ tự toàn bộ như đã được nói ở phần 3 chương lý thuyết nền tảng

Từ nhận xét trên Bentley và Ottmann đã xây dựng giải thuật tìm tất cả các điểm cắt nhau của một tập hợp đoạn thẳng trong thời gian ) Với n là số đoạn thẳng đầu vào và m là số điểm cắt nhau Bentley và Ottmann đưa ra nhận xét: Khi u quét ngang qua giao điểm của l 1 và l 2 thì thứ tự của l 1 và l 2 sẽ đảo ngược

Giải thuật Bentley – Ottmann thực hiện việc kiểm tra 2 đường thẳng nằm cạnh nhau khi có sự thay đổi trong dãy thứ tự theo trục Y, nếu có điểm giao nhau sẽ chèn các điểm giao nhau vào dãy thứ tự theo trục X và thêm vào bước đảo ngược thứ tự trong dãy thứ tự theo trục Y khi u quét ngang qua điểm giao nhau Nếu hai dãy thứ tự theo trục X và Y đều được hiện thực với kiến trúc cây nhị phân tự cân bằng, với tất cả các thao tác INSERT, DELETE, RETRIEVE đều thực hiện trong thời gian log n Độ phức tạp giải thuật sẽ được thực hiện với thời gian : total total = O((n+k)log n)

Theo mô hình giải thuật quét Bentley Ottmann, một đường quét sẽ lần lượt duyệt qua các điểm sự kiện và thứ tự theo trục X, dãy thứ tự theo trục Y sẽ được cập nhật ứng với mỗi sự kiện này Đối với trường hợp phổ biến, điểm sự kiện chỉ bao gồm điểm đầu, điểm cuối, và điểm cắt nhau Không bao gồm được các trường hợp đặc biệt như: đường thẳng đứng, ba đường thẳng cùng cắt nhau tại 1 điểm, điểm đầu hay điểm cuối nằm trên đường thẳng khác Giải thuật của bài luận văn tiếp cận theo cách của Mehlhorn và Nọher đó giải quyết được cỏc hạn chế này Tiếp theo sẽ giới thiệu tổng quan về giải thuật và đi vào chi tiết giải thuật của chương trình

Giới thiệu tổng quan về giải thuật:

Input: S = {các đoạn thẳng được xác định bởi 2 điểm đầu và cuối}

Output: đồ thị G(V,E) mô tả như hình 13 gồm có:

 V = Tập hợp tất cả các điểm đầu, cuối và giao nhau của các đoạn thẳng trong S

 E = Là tập hợp các đoạn thẳng hình thành từ các đoạn thẳng trong S và có đúng hai đỉnh đầu và cuối thuộc V

Chương trình xây dựng 2 cấu trúc dữ liệu dãy thứ tự theo trục X gồm các phần tử tương ứng với tất cả các điểm sự kiện, đường quét sẽ lần lượt duyệt qua các điểm sự kiện này Và cấu trúc dữ liệu còn lại là dãy thứ tự theo trục Y chứa các đoạn thẳng đang nằm trong dãy thứ tự toàn phần

Trong dãy thứ tự theo trục X, các điểm trong dãy được sắp xếp theo thứ tự A đứng trước B nếu (xA < x B )  ((x A = x B )  (y A < y B )) Cấu trúc dữ liệu của thứ tự theo trục X được xây dựng theo kiểu cây nhị phân tự cân bằng AvlTree Đảm bảo bất kì phép INSERT, DELETE, GET đều diễn ra trong thời gian log n Mỗi phần tử trong dãy thứ tự theo trục X, gọi là phần tử xit được định nghĩa gồm 2 thành phần xit < p , sit > trong

Hình 13: Tổng quan giải thuật : Tập S đầu vào và đồ thị G(V,E) đầu ra của giải thuật Ta có |S| = 4 |V| = 10, |E| = 12

GIẢI THUẬT QUÉT BENTLEY - OTTMANN TẬP ĐOẠN

THẲNG ĐẦU VÀO ĐẶC TRƯNG CHO

BẢN VẼ ĐỒ THỊ G GỒM CÁC ĐOẠN THẲNG VÀ ĐIỂM GIAO

30 đó p là điểm tương ứng, và sit là phần tử bên dãy thứ tự theo trục Y có mối quan hệ với xit sẽ được nói ở phần sau

Dãy thứ tự theo trục Y, là một cấu trúc dữ liệu chứa tất cả các đoạn thẳng cắt nhau với đường quét và được sắp xếp theo trật tự xuất hiện trên đường quét theo quan hệ trên dưới như định nghĩa trong phần lý thuyết Các phần tử trong dãy thứ tự theo trục Y, gọi là phần tử sit gồm 2 thành phần như sau sit < s, xit > trong đó s là đoạn thẳng tương ứng và xit là phần tử tương ứng trong dãy thứ tự theo trục X có mối quan hệ với sit sẽ được đề cập ở phần sau sau

Như đã nói ở trên, giải thuật của Bentley – Ottmann vẫn còn nhiều hạn chế, vẫn còn những trường hợp đặc biệt bị bỏ qua, để bao gồm các trường hợp còn thiếu này Mehlhorn và Nọher đó định nghĩa một khỏi niệm đường quột như sau:

Tương ứng với một điểm sự kiện p(x p , y p ) định nghĩa một điểm quét p_sweep(x sw , y sw ) và một giá trị EPSILON  đủ nhỏ Đường quét có hướng L được định nghĩa:

Với điểm quét thay đổi theo 3 giai đoạn của giải thuật quét sẽ nói ở phần sau:

Thí Nghiệm

Các thí nghiệm đánh giá chức năng kiểm tra mức độ tương quan dựa trên topology

Trong phần này các thí nghiệm được tiến hành để đánh giá tính ổn định và tính hiệu quả của chức năng kiểm tra mức độ tương quan dựa trên topology của bản vẽ khi các bản vẽ trải qua các biến đổi gian lận như: thêm bớt các phần tử nhiễu nhưng không thay đổi cấu trúc của bản vẽ gốc, đánh cắp bộ phận của bản vẽ gốc

Tập đồ thị tương tự TT1 (mẫu dương): Từ đồ thị gốc ta tạo ra các đồ thị con bằng cách thêm hay bớt các node hay các cạnh Adjacency Mức độ thay đổi của đồ thị không quá 5% số lượng node và 5% số lượng cạnh Ứng với mỗi phương pháp thay đổi thêm bớt cạnh ta thực hiện tại các vị trí khác nhau trên bản vẽ

Tập đồ thị sai khác SK1 (mẫu âm): gồm 25 đồ thị được tạo sai khác so với đồ thị gốc bằng cách bớt đi hay thêm vào nhiều phần tử, và thay đổi hẳn kiến trúc của đồ thị topology

Kiểm tra đánh giá tính ổn định: Đồ thị gốc sẽ lần lượt được so sánh tổng thể với từng đồ thị trong tập TT1, và tập SK1 kết quả ta thu được các giá trị của mức độ sai lệch về topology ứng với từng đồ thị Sau đó tính toán độ lệch chuẩn để đánh giá tính ổn định như tiêu chí đã nêu trên Kết quả thí nghiệm được đưa ra trên bảng 2 và bảng 3

VỊ TRÍ 5 1 delete đỉnh 4 4 0.6267 0.6575 0.6526 0.6849 0.6716 2 delete cạnh 0 5 1.5113 1.0405 0.8193 1.2853 1.5620 3 delete cạnh và đỉnh 4 6 1.0500 1.1002 0.7921 1.0079 0.6082 4 thêm đỉnh 4 4 0.4811 0.6712 0.7625 0.5303 0.6834 5 thêm cạnh 0 6 0.9027 1.1223 0.8645 0.9247 0.7406 6 thêm cạnh và đỉnh 4 6 1.0948 0.7360 0.8084 0.6387 0.9932

Trung bình : 0.867492309 Độ lệch chuẩn : 0.267581879

Bảng 2:kết quả thí nghiệm được thực hiện trên 30 đồ thị tương tự với đồ thị gốc có số |E| = 117 và |V| = 80.

1 sai khác về 75% số đỉnh và cạnh 60 86 10.551 10.804 10.379 10.847 10.589 10.634 0.193

2 sai khác về 50% số đỉnh và cạnh 40 58 6.838 6.435 6.532 6.968 6.754 6.706 0.219

3 sai khác về 25% số đỉnh và cạnh 20 27 3.643 3.896 3.480 3.480 3.864 3.673 0.201 4 giống đỉnh và cạnh nhưng khác số level 9.122 8.387 8.143 7.490 7.237 8.076 0.749

5 giống đỉnh và cạnh và level nhưng khác topology

Bảng 3:Kết quả thí nghiệm được thực hiện trên 30 đồ thị sai khác với đồ thị gốc có số |E| = 117 và |V| = 80

Hai đồ thị sai khác nhau về topology với sai khác về số lượng node và số lượng cạnh không quá 5%, sau khi thực hiện phép đo trên 30 đồ thị khác nhau, trị trung bình của các giá trị độ sai lệch về toplogy rút ra được là:

 = 0.867492309 Đây được chương trình coi là ngưỡng để xác định độ tương tự về topology của hai bản vẽ Hai đồ thị được coi là giống nhau về mặt topology nếu độ sai lệch topo <  Và khác nhau về topology nếu độ sai lệch topo > 

49 Qua các thí nghiệm về so sánh topology của 2 bản vẽ, có thể rút ra được một số đặc điểm của của phương pháp so sánh topology trong [9] như sau:

 Giá trị sai lệch của 2 phổ đồ thị topology không bị ảnh hưởng lớn khi thay đổi dưới

5% số cạnh hay số node của đồ thị

 Giá trị sai lệch của 2 phổ đồ thị topology chịu ảnh hưởng của quan hệ Adjacency nhiều hơn quan hệ inclusion Khi thêm cạnh đồ thị vào bản vẽ sai lệch biến thiên nhiều hơn khi thêm node vào đồ thị bản vẽ

 Giá trị sai lệch còn phụ thuộc vào vị trí thêm và bớt node trên đồ thị bản vẽ

 Sai lệch của hai đồ thị có số đỉnh vả số cạnh giống nhau nhưng khác nhau về topology và khác nhau về số cấp chi tiết sẽ giảm dần khi số cấp chi tiết bằng với số cấp chi tiết của đồ thị gốc

Các thí nghiệm đánh giá chức năng kiểm tra mức độ tương quan dựa trên đặc trưng hình học

Trong phần này các thí nghiệm được tiến hành để đánh giá tính ổn định của chức năng kiểm tra mức độ tương quan dựa trên đặc trưng hình học của bản vẽ khi các bản vẽ trải qua các biến đổi gian lận như: thêm bớt các phần tử nhiễu nhưng không thay đổi cấu trúc của bản vẽ gốc, thay đổi kích thước các phần tử không đáng kể Thay đổi hình dạng các phần tử không đáng kể

Tập bản vẽ tương tự TT2 (mẫu dương): Gồm 25 bản vẽ gần như tương tự nhau, được tạo ra từ một bản vẽ gốc và thay đổi một số bộ phận như thêm hoặc bớt các polygon với kích thước nhỏ, thêm nhiễu với kích thước nhỏ, thay đổi các hình dạng của polygon không đáng kể, sao cho sự thay đổi về diện tích của từng polygon trong bản vẽ không quá ±0.5% diện tích ban đầu

Tập đồ thị sai khác SK2 (mẫu âm): gồm 10 bản vẽ được tạo ra sai khác hoàn toàn so với bản vẽ gốc

Kiểm tra đánh giá tính ổn định: Bản vẽ gốc sẽ lần lượt được so sánh tổng thể với từng bản vẽ trong tập TT2, và tập SK2 kết quả ta thu được các giá trị của mức độ sai lệch về đặc trưng hình học ứng với từng đồ thị Sau đó tiến hành tính toán độ lệch chuẩn để đánh giá tính ổn định như tiêu chí đã nêu trên Kết quả thí nghiệm được đưa ra trên bảng 4 và bảng 5

TƯƠNG TỰ MÔ TẢ SAI LỆCH GIÁ

TRUNG BÌNH ĐỘ LỆCH CHUẨN

1 Thêm polygon nhiễu nhỏ sai lệch 5% số polygon và diện tích nhỏ

2 Thêm nhiễu trên cạnh tăng diện tích chênh lệch diện tích tăng dần từ 1% đến

3 Thêm nhiễu trên cạnh giảm diện tích diện tích giảm không quá 1% nhưng tại các vị trí khác nhau

4 Tăng diện tích phần tử tăng diện tích của các thành phần không quá 5% tổng diện tích

5 Giảm diện tích phần tử

Giảm diện tích của các thành phần không quá 5% tổng diện tích

Bảng 4:Kết quả thí nghiệm được thực hiện trên 25 bản vẽ gồm các polygon tương tự với bản vẽ gốc được biến đổi nhiễu không quá 5% diện tích.

Sai khác về hình dạng và diện tích

2 Sai khác về hình dạng giống diện tích

Bảng 5:Kết quả thí nghiệm được thực hiện với 10 bản vẽ sai lệch hoàn toàn so với bản vẽ gốc

Hai đồ thị sai khác nhau về đặc trưng hình học với sai khác về diện tích của nhiễu không quá 5%, sau khi thực hiện phép đo trên 25 đồ thị khác nhau, trị trung bình của các giá trị độ sai lệch về hình học rút ra được là:

 = 0.11256 Nhận xét về phương pháp đánh giá đặc trưng hình học của Fonseca qua các thử nghiệm ta có thể rút ra một số đặc điểm sau:

 Phương pháp bất biến so với các phép biến đổi đơn giản như phép quay, phép tịnh tiến, và có sai lệch rất nhỏ so với phép tỉ lệ đồng dạng  10 -7

 Do tính chất của khoảng cách minimum weight distance, các nhiễu nhỏ thêm vào sẽ được bỏ qua do việc lấy phần tử tương tự sẽ bỏ qua các phần tử này Nên các sai lệch về đặc trưng hình học do thêm phần tử nhiễu nhỏ vào bản vẽ sẽ bằng 0

 Sai lệch phụ thuộc vào vị trí và phần trăm diện tích thêm vào hay bớt đi trên các polygon thành phần

Các thí nghiệm đánh giá chức năng kiểm tra mức độ tương quan tổng hợp:51 Phần VI Kết Luận

Thử nghiệm được tiến hành trên 100 mẫu, gồm 20 mẫu TT1 và 25 mẫu SK1 và 55 mẫu được sinh ngẫu nhiên Nhận xét tính giống nhau thực tế của hai bản vẽ do một học viên không thực hiện đề tài đánh giá và được coi là khách quan Tiến hành thu thập giá trị precision và recall của 1 mẫu được chọn ngẫu nhiên trong 20 mẫu TT1 so sánh với 99 mẫu còn lại và thực hiện quá trình này 10 lần ta được bảng sau

Giá trị precision và recall được cho trong bảng sau:

Bảng 6:Kết quả Precision và Recall tính trên 100 mẫu

Dựa vào các kết quả thực nghiệm trên, ta có thể kết luận về tính ổn định và tính hiệu quả của chương trình trong phương pháp so sánh đồ thị topology, phương pháp so sách đặc trưng hình học và cả trong phương pháp so sánh tổng hợp Về tính ổn định của chương trình, chương trình đã đảm bảo đánh giá đúng mức độ tương tự giữa các bản vẽ gần giống nhau (sai khác 5%), loại bỏ các ảnh hưởng của nhiễu nhỏ, của các phép biến đổi đơn giản Hơn nữa trong thí nghiệm tổng hợp ta còn nhận thấy khả năng phân biệt được tính tương đồng về topology và tương đồng về đặc trưng hình học của chương trình, đáp ứng được đặc điểm 2, 3 và 5 của bảng 1

Về tính hiệu quả của chương trình, chương trình đã có thể tìm ra được những phần tử tương đồng trong bộ phận của bản vẽ Đảm bảo tính chất thứ 4 trong bảng 1

Bài luận văn đã xây dựng một chương trình giúp người dùng phát hiện ra sự gian lận trong các bản vẽ số bằng cách đưa ra một giá trị để đánh giá độ tương tự của các bản vẽ

Chương trình xây dựng dựa trên nền tảng hướng tiếp cận của [9] để đánh giá một cách đúng đắn việc gian lận trên các bản vẽ Hướng tiếp cận của luận văn được coi là hiệu quả vì đã từng bước triệt tiêu các phương pháp gian lận bản vẽ như các biến đổi đơn giản bản vẽ gốc, phép quay, phép tịnh tiến, phép tỉ lệ đồng dạng, việc thêm nhiễu vào bản vẽ, việc so sánh từng phần trong bản vẽ đích…, hơn nữa hướng tiếp cận của chương trình cũng phù hợp với trường hợp cụ thể là bản vẽ cơ khí, khi sự tương đồng còn phụ thuộc vào vị trí tương đối trong không gian của các thành phần bản vẽ

Chương trình trước hết so sánh quan hệ không gian giữa các thành phần cấu thành nên bản vẽ Thông qua việc xây dựng đồ thị mối quan hệ topology giữa các thành phần này, chương trình đã đánh giá được vị trí tương đối của các thành phần bản vẽ, vừa loại bỏ được ảnh hưởng của các phép biến đổi đơn giản như phép quay, tịnh tiến, tỉ lệ…Việc so sánh các đồ thị topology này còn giúp loại bỏ đi các nhiễu nhỏ do thêm các phần tử nhiễu vào bản vẽ Ngoài ra chương trình còn xây dựng các đồ thị topology cho từng thành phần của bản vẽ, thành các đồ thị con và các mức chi tiết khác nhau, điều này cũng phục vụ cho việc bỏ qua một số chi tiết nhiễu và giúp cho việc so sánh từng bộ phận của bản vẽ

Sau bước đánh giá quan hệ nếu hai bản vẽ hay một phần bản vẽ được kết luận là giống nhau về mặt topology, lúc đó chương trình sẽ tiến hành so sánh về đặc trưng hình học của các polygon trong từng bản vẽ Các vec tơ đặc trưng hình học được xây dựng sao cho không phụ thuộc vào các phép biến đổi đơn giản và các nhiễu nhỏ về hình dạng của các polygon, điều này cũng đáp ứng yêu cầu phát hiện gian lận trong bản vẽ

Ngoài các điểm mạnh của hướng tiếp cận của Fonseca như đưa ra được một phương pháp so sánh mức độ tương đồng của các bản vẽ một cách chính xác và hiệu quả hơn so với các phương pháp tiếp cận khác thì phương pháp của Fonseca còn có một số hạn chế Hạn chế đầu tiên là do mục đích chính của hướng tiếp cận của Fonseca dùng để truy hồi bản vẽ trong một cơ sở dữ liệu đã được rút trích đặc trưng sẵn, nên tổng thời gian của việc xử lý chỉ chủ yếu bao gồm thời gian thực hiện rút trích đặc trưng trên bản vẽ đưa vào câu truy vấn Và các bản vẽ để truy vấn từ việc sketching thường ít chi tiết và đơn giản nên thời gian truy vấn cơ sở dữ liệu có thể diễn ra trong thời gian thực

Còn mục đích của bài luận văn để so sánh các bản vẽ với nhau, thông thường các bản vẽ đưa vào so sánh sẽ phức tạp và bao gồm nhiều chi tiết, dẫn đến việc xử lý bản vẽ sẽ tốn nhiều thời gian do đó việc phân tích tương đồng hai bản vẽ phức tạp sẽ không thể diễn ra trong thời gian thực

53 Ngoài ra một hạn chế nữa của hướng tiếp cận của Fonseca được Fonseca cải thiện trong [26] là các quan hệ topology như Adjacent và Inclusion trong đồ thị topology chỉ là các quan hệ binary, không chứa thêm thông tin nào khác điều này dẫn đến một số sai sót trong quá trình so sánh bản vẽ Ví dụ trong hình 21, hai bản vẽ này sẽ được coi là giống nhau về topology và cả đặc trưng hình học, tuy nhiên chúng vẫn khác nhau Vì thế chúng ta cần thêm trọng số cho các cạnh của đồ thị topology để có thêm thông tin tăng hiệu quả so sánh bản vẽ Đó chính là hướng phát triển của luận văn sau này

Hình 21: Hai chi tiết trên được chương trình coi như giống nhau về topology và đặc trưng hình học Nhưng lại là hai chi tiết khác nhau

Ngày đăng: 09/09/2024, 15:18

HÌNH ẢNH LIÊN QUAN

Hình 1: Các phép biến đổi cơ bản từ bản vẽ gốc A qua phép quay ta được hình B,  qua phép tỉ lệ đồng dạng ta được hình C, qua phép đối xứng ta được hình D và  phép thêm nhiễu nhỏ nhưng vẫn không ảnh hường đến đặc trưng ta được hình E - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 1 Các phép biến đổi cơ bản từ bản vẽ gốc A qua phép quay ta được hình B, qua phép tỉ lệ đồng dạng ta được hình C, qua phép đối xứng ta được hình D và phép thêm nhiễu nhỏ nhưng vẫn không ảnh hường đến đặc trưng ta được hình E (Trang 17)
Bảng 1: Các tính chất  cần có của một phương pháp xác định độ  chênh lệch giữa các  bản vẽ - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Bảng 1 Các tính chất cần có của một phương pháp xác định độ chênh lệch giữa các bản vẽ (Trang 18)
Hình 3: Quan hệ thứ tự của các đoạn thẳng theo phương thẳng đứng - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 3 Quan hệ thứ tự của các đoạn thẳng theo phương thẳng đứng (Trang 20)
Hình 5 a) 8 mối quan hệ topology của Egenhofer  b) Quan hệ Adjacent và Includes tương đương với các quan hệ trong Egenhofer - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 5 a) 8 mối quan hệ topology của Egenhofer b) Quan hệ Adjacent và Includes tương đương với các quan hệ trong Egenhofer (Trang 25)
Hình 4: Các mối quan hệ không gian theo Egenhofer - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 4 Các mối quan hệ không gian theo Egenhofer (Trang 25)
Hình 6: Đồ thị topology rút ra được từ bản vẽ - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 6 Đồ thị topology rút ra được từ bản vẽ (Trang 26)
Hình vẽ  Topology  Ma trận kề đồ thị  Trị riêng  Bộ mô tả - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình v ẽ Topology Ma trận kề đồ thị Trị riêng Bộ mô tả (Trang 29)
Sơ đồ tổng quát của giải thuật chương trình gồm có các bước như trong hình 10. - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Sơ đồ t ổng quát của giải thuật chương trình gồm có các bước như trong hình 10 (Trang 30)
Sơ đồ giải thuật xử lý file bản vẽ đầu vào được mô tả như trong hình 11. Tất cả các  hàm xử lý trong bước này đều nhằm vào mục đích đưa bản vẽ về các đoạn thẳng thành  phần - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Sơ đồ gi ải thuật xử lý file bản vẽ đầu vào được mô tả như trong hình 11. Tất cả các hàm xử lý trong bước này đều nhằm vào mục đích đưa bản vẽ về các đoạn thẳng thành phần (Trang 31)
Hình 12: Xấp xỉ hình tròn bằng n-gons - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 12 Xấp xỉ hình tròn bằng n-gons (Trang 32)
Hình 13: Tổng quan giải thuật : Tập S đầu vào và đồ thị G(V,E)  đầu ra của giải thuật - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 13 Tổng quan giải thuật : Tập S đầu vào và đồ thị G(V,E) đầu ra của giải thuật (Trang 35)
Hình 6 : Giải thích nguyên lý hoạt động của đường quét. - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 6 Giải thích nguyên lý hoạt động của đường quét (Trang 37)
Hình 16: Các bước xử lý chu trình cơ sở thành tập polygon đặc trưng. - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 16 Các bước xử lý chu trình cơ sở thành tập polygon đặc trưng (Trang 41)
HÌNH HỌC - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
HÌNH HỌC (Trang 41)
Hình 17: Bước đầu tiên của giải thuật rotating caliper. Trong hình A - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 17 Bước đầu tiên của giải thuật rotating caliper. Trong hình A (Trang 45)
Hình 18: Bước đầu tiên của giải thuật tìm tứ giác nội tiếp cực đại. Diện tích tứ  giác ABCD là tổng của 2 tam giác ABD và CBD - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 18 Bước đầu tiên của giải thuật tìm tứ giác nội tiếp cực đại. Diện tích tứ giác ABCD là tổng của 2 tam giác ABD và CBD (Trang 46)
Hình 19 giới thiệu tổng quát về các giai đoạn xử lý của bước này. - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 19 giới thiệu tổng quát về các giai đoạn xử lý của bước này (Trang 47)
Hình 20: Tính toán đồ thị topology và xây dựng hệ thống chỉ mục cho bản vẽ. - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 20 Tính toán đồ thị topology và xây dựng hệ thống chỉ mục cho bản vẽ (Trang 50)
Bảng 2:kết quả thí nghiệm được thực hiện trên 30 đồ thị tương tự với đồ thị gốc có - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Bảng 2 kết quả thí nghiệm được thực hiện trên 30 đồ thị tương tự với đồ thị gốc có (Trang 54)
Hình 21: Hai chi tiết trên được chương trình coi như giống nhau về topology và đặc - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
Hình 21 Hai chi tiết trên được chương trình coi như giống nhau về topology và đặc (Trang 59)
Đồ thị  23  [9] - Luận văn thạc sĩ Khoa học máy tính: Phát triển chương trình xác định độ tương tự giữa các bản vẽ số Autocad
th ị 23 [9] (Trang 64)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN