Kỹ thuật bảo vệ bản quyền bản đồ trong hệ thống thông tin địa lý

76 363 0
Kỹ thuật bảo vệ bản quyền bản đồ trong hệ thống thông tin địa lý

Đ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

LỜI CẢM ƠN Để hoàn thành luận văn này, trƣớc hết em xin chân thành cảm ơn thầy giáo, cô giáo trƣờng Đại học Công nghệ thông tin Truyền thông Thái Nguyên tận tình truyền đạt kiến thức, tổ chức hoạt động cho lớp Thạc sĩ chuyên ngành Khoa học máy tính, khóa học 2013-2015 Đặc biệt, em xin gửi lời biết ơn sâu sắc tới PGS.TS Đặng Văn Đức, thời gian qua tận tình bảo, giúp đỡ, kịp thời định hƣớng để em hoàn thành đƣợc luận văn Dù thân cố gắng, nhƣng không tránh khỏi lúc nhãng, chƣa nỗ lực hết mình, em chân thành kính mong thầy lƣợng thứ Tác giả xin gửi lời cảm ơn sâu sắc tới ban lãnh đạo, anh chị đồng nghiệp Sở Thông tin Truyền thông Bắc Kạn – nơi tác giả công tác, tạo điều kiện, giúp đỡ để tác giả hoàn thành chƣơng trình học thời gian qua Đồng thời tác giả xin đƣợc chân thành cảm ơn gia đình, bạn lớp ngƣời thân thiết động viên, giúp đỡ suốt trình học tập thực luận văn./ Th i Ngu n th ng năm 2015 Ngƣời thực Hà Hồng Cƣơng LỜI CAM ĐOAN Tôi xin cam đoan kết đạt đƣợc luận văn tìm hiểu, tổng hợp thực hiện, không ch p hoàn toạn lại b t k điều ngƣời khác Toàn điều đƣợc trình bày khóa luận cá nhân, đƣợc tham khảo tổng hợp từ nguồn tài liệu khác T t tài liệu tham khảo, tổng hợp đƣợc trích dẫn với nguồn gốc r ràng Tôi xin chịu hoàn toàn trách nhiệm lời cam đoan Nếu có điều sai, xin chịu hình thức k luật theo quy định Th i Ngu n th ng năm 2015 Ngƣời thực Hà Hồng Cƣơng i MỤC LỤC TRANG BÌA PHỤ LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC i CÁC THUẬT NGỮ, TỪ VIẾT TẮT iii DANH MỤC HÌNH MINH HỌA iv DANH MỤC BẢNG BIỂU iv MỞ ĐẦU .1 Chƣơng 1: TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN ĐỊA LÝ VÀ THỦY VÂN SỐ 1.1 Tổng quan hệ thống thông tin địa lý 1.1.1 Bản đồ 1.1.2 C u trúc liệu địa lý 1.1.3 Chức hệ thống GIS 10 1.1.4 Khả ứng dụng GIS 12 1.2 Thủy vân số 13 1.2.1 Tổng quan 13 1.2.2 Lƣợc đồ thủy vân tổng quát 14 1.2.3 Các yêu cầu lƣợc đồ thủy vân 16 Kết luận chƣơng 17 Chương 2: MỘT SỐ KỸ THUẬT BẢO VỆ BẢN QUYỀN BẢN ĐỒ VỚI THỦY VÂN SỐ 19 2.1 Cơ sở thủy vân liệu đồ vectơ .19 2.1.1 Đặc điểm riêng đồ vectơ 19 2.1.2 Các kiểu t n công đồ vectơ 21 2.1.3 Các hƣớng tiếp cận thủy vân đồ vectơ số 23 2.2 Thuật toán thủy vân liệu dạng vùng 28 2.2.1 Phác thảo thuật toán 29 ii 2.2.2 Tính toán định danh bền vững 31 2.2.3 Tính hƣớng đa giác 32 2.2.4 Ph p co giãn để nhúng bit 33 2.2.5 Thuật toán thủy vân 34 2.3 Thuật toán thủy vân liệu dạng tuyến 37 2.3.1 Phân đoạn đồ 38 2.3.2 Thuật toán nhúng tách thủy vân 42 Kết luận chƣơng 49 Chương 3: XÂY DỰNG CHƢƠNG TRÌNH THỬ NGHIỆM 51 3.1 Lựa chọn toán thử nghiệm công nghệ sử dụng 51 3.1.1 Phát biểu toán 51 3.1.2 Công nghệ sử dụng: 51 3.2 Mô tả liệu thử nghiệm 51 3.3 Xây dựng hệ thống thử nghiệm .52 3.3.1 Chức chƣơng trình 52 3.3.2 Giao diện chƣơng trình 56 3.4 Đánh giá kết đạt đƣợc .57 KẾT LUẬN .58 TÀI LIỆU THAM KHẢO 60 PHỤ LỤC 61 iii CÁC THUẬT NGỮ, TỪ VIẾT TẮT STT Từ, thuật Ý nghĩa ngữ Copyright Bản quyền, quyền tác giả DCT Discrete cosine transform - Ph p biến đổi Cosin rời rạc DFT Discrete Fourier transform - Ph p biến đổi Fourier rời rạc DWT Discrete wavelet transform - Ph p biến đổi Wavelet rời rạc Embeding Nhúng ESRI Environmental Systems Research Institute Extracting Tách thông tin GIS Geographic Information System - Hệ thống thông tin địa lý PRN Pseudo Random Number - Số giả ngẫu nhiên 10 PRNG Pseudo Random Number Generator - Bộ sinh số giả ngẫu nhiên 11 PRNS Pseudo Random Number Sequence - Chuỗi số giả ngẫu nhiên 12 PSNR Peak signal-to-noise ratio - T số tín hiệu nhiễu đỉnh 13 Raster map C u trúc liệu đồ dạng raster 14 Shapefile C u trúc liệu mở ESRI để lƣu trữ đồ số dạng vectơ 15 Vectơ map C u trúc liệu đồ dạng vectơ 16 Watermark D u thủy vân, thủy n 17 Watermarking Thủy vân, đánh d u ẩn iv DANH MỤC HÌNH MINH HỌA Hình 1 Hệ thống thông tin địa lý Hình Các lớp đồ phân lớp đối tƣợng Hình Ba hợp phần thông tin GIS (theo J.Dagermon, 1983) .5 Hình C u trúc vectơ raster Hình Các tầng đồ [1] Hình Các nhóm chức GIS 10 Hình Bộ nhúng thủy vân tổng quát .15 Hình Bộ tách thủy vân với đầu vào 15 Hình Tam giác yêu cầu lƣợc đồ thủy vân tốt .17 Hình Các đa giác biểu diễn tòa nhà đồ 30 Hình 2 Nhúng bit ph p co giãn đa giác 31 Hình Mã hóa bit vào lƣợng tử hóa .34 Hình Quá trình lƣợc giản đồ thuật toán Douglas-Peucker 39 Hình Bản đồ với điểm đặc trƣng (bậc >2) 40 Hình Minh họa trình nhúng nhóm đồ phân đoạn .43 Hình Biểu đồ Use Case - Nhúng thủy vân 53 Hình Biểu đồ Use Case - Tách thủy vân 54 Hình 3 Biểu đồ Activity - Nhúng thủy vân 55 Hình Giao diện chƣơng trình thử nghiệm 56 Hình Giao diện sau chọn mở file đồ .56 Hình Giao diện trích thủy vân sau chọn file key 57 DANH MỤC BẢNG BIỂU Bảng 1 So sánh mô hình raster vectơ MỞ ĐẦU Hệ thống thông tin địa lý (GIS) bắt đầu xu t vào khoảng năm 1960s đƣợc phát triển mạnh mẽ 10 năm trở lại GIS, với cách thức quản lý tích hợp liệu không gian (bản đồ) phi không gian (thuộc tính), với công cụ tìm kiếm, phân tích kết hợp, chồng xếp liệu giúp phân tích, đánh giá trạng, dự báo tƣơng lai, đề định hƣớng phát triển bảo đảm hài hòa, thống nh t phát triển kinh tế - xã hội, quốc phòng bảo vệ môi trƣờng Tuy nhiên, sản phẩm đầu GIS đồ, đồ thị bảng liệu cách trực quan Cũng giống nhƣ liệu đa phƣơng tiện khác Internet, đồ GIS dễ dàng bị ch p, sửa chữa, thay đổi, t n công nhiều đối tƣợng nhiều phƣơng thức khác Thực tế cho th y, việc tạo đồ vectơ số có độ xác cao đòi hỏi r t nhiều thời gian chi phí lớn đo đạc, trắc địa tổng hợp Vì đồ đƣợc phân phối sử dụng miễn phí Ngoài có ứng dụng đòi hỏi tính toàn vẹn cao, chống xuyên tạc, giả mạo nhƣ đồ dùng quân Do bảo vệ quyền, chống xuyên tạc giả mạo đồ hƣớng nghiên cứu có tính hữu dụng cao, góp phần cho sản phẩm đầu hệ thống GIS giữ vững giá trị, tính pháp lý môi trƣờng mạng Đã có nhiều phƣơng pháp phần cứng phần mềm đƣợc nghiên cứu ứng dụng để bảo vệ quyền sản phẩm số Các phƣơng pháp sử dụng phần cứng hiệu nhƣng thƣờng có chi phí cao sản xu t phân phối, ngƣời ta thƣờng thay kết hợp với thuật toán cài đặt phần mềm để bảo vệ chống lại hành vi vi phạm quyền liệu Thủy vân số đƣợc nghiên cứu mƣời năm trở lại dần chứng tỏ giải pháp khả thi với chi phí th p tính đảm bảo cao cho v n đề bảo vệ quyền số Với loại liệu đa phƣơng tiện quen thuộc nhƣ ảnh tĩnh, nhạc số, video,… nhà nghiên cứu có số kết mạnh ứng dụng thủy vân để bảo vệ quyền Tuy nhiên loại liệu ảnh vectơ chƣa có nhiều nghiên cứu, đặc biệt nƣớc ta Với luận văn này, tác giả tập trung tìm hiểu kỹ thuật thủy vân đƣợc sử dụng để thủy vân đồ vectơ số, đánh giá để lựa chọn số thuật toán cụ thể ứng dụng vào chƣơng trình thử nghiệm nhúng – tách thủy vân vào số đồ tác giả sƣu tầm đƣợc Bố cục luận văn gồm Chƣơng sau: Chƣơng 1: Tổng quan hệ thống thông tin địa lý (GIS) thủy vân số: Trình bày số khái niệm bản, chức khả ứng dụng GIS thủy vân số Việc phân tích c u trúc liệu, chức GIS giúp làm r nhiệm vụ cần có ứng dụng bảo vệ quyền sản phẩm đồ vectơ hệ thống Chƣơng 2: Một số kỹ thuật bảo vệ quyền đồ với thủy vân số: Đi sâu tìm hiểu số kỹ thuật ứng dụng thủy vân số để bảo vệ quyền đồ vectơ gồm thuật toàn thủy vân đồ vectơ liệu dạng vùng liệu dạng tuyến Chƣơng 3: Xây dựng chƣơng trình thử nghiệm: Trên sở kiến thức tìm hiểu chƣơng 2, chƣơng thực lựa chọn thuật toán để cài đặt chƣơng trình thử nghiệm Dựa chƣơng trình cài đặt, nhận x t khả để chƣơng trình đƣợc đƣa vào ứng dụng thực tế Do thời gian thực hiểu biết tác giả hạn chế nên luận văn không tránh khỏi thiếu sót nội dung nhƣ hình thức trình bày Tác giả r t mong nhận đƣợc cảm thông, góp ý, nhận x t quý thầy cô ngƣời đọc để tác giả hoàn thiện tiếp tục theo hƣớng nghiên cứu sau Chƣơng 1: TỔNG QUAN VỀ HỆ THỐNG THÔNG TIN ĐỊA LÝ VÀ THỦY VÂN SỐ 1.1 Tổng quan hệ thống thông tin địa lý Hệ thống thông tin địa lý (Geographic Information System - GIS) nhánh công nghệ thông tin, đƣợc sử dụng nhằm xử lý đồng lớp thông tin không gian (bản đồ) gắn với thông tin thuộc tính, phục vụ nghiên cứu, quy hoạch quản lý hoạt động theo lãnh thổ Theo quan điểm chung thống nh t, GIS hệ thống kết hợp ngƣời hệ thống máy tính thiết bị ngoại vi để lƣu trữ, xử lý, phân tích, hiển thị thông tin địa lý để phục vụ mục đích nghiên cứu, quản lý nh t định X t dƣới góc độ công cụ, GIS dùng để thu thập, lƣu trữ, biến đổi, hiển thị thông tin không gian nhằm thực mục đích cụ thể; X t dƣới góc độ hệ thống, GIS hệ thống gồm hợp phần: phần cứng, phần mềm, sở liệu sở tri thức chuyên gia Mô hình hệ thống GIS đƣợc biểu diễn nhƣ hình 1.1 [1]: Hình 1 Hệ thống thông tin địa lý Từ giới thực, đối tƣợng, tƣợng (sông, núi, lƣợng nƣớc, thời tiết, ), để phản ánh đƣợc vào GIS, cần đƣợc trừu tƣợng hóa hay đơn giản hóa đƣa dạng đặc trƣng mã hóa đƣợc sở liệu máy tính Raster Vectơ Đồng thời, liệu đƣợc phân lớp đặc trƣng, đơn giản hóa, hay tổng quát hóa, sử dụng hệ thống trục tọa độ ph p chiếu đồ phù hợp Cùng với thuộc tính (là liệu phi không gian để làm r thêm cho đối tƣợng), đối tƣợng liệu sau mã hóa đƣợc tổ chức theo c u trúc liệu phù hợp để thuận tiện cho việc lƣu trữ, thao tác, sau Trong hệ thống GIS có phần mềm công cụ giúp cho trình tìm kiếm phân tích không gian hiệu Thông qua giao diện ngƣời dùng, ngƣời sử dụng truy v n hệ thống GIS đƣợc trả đồ chuyên đề, đƣợc sử dụng cho mục đích nh t định qua giúp đánh giá, phân tích để đƣa định quản lý, đầu tƣ, phù hợp nh t 1.1.1 Bản đồ Các đối tƣợng đồ tồn dƣới dạng số đƣợc thể lƣu trữ lớp thông tin khác (layer) Các lớp thông tin đồ đƣợc xếp chồng lên tạo đƣợc đồ yêu cầu, cụ thể (hình 1.2): Hình C c lớp đồ phân lớp đối tượng Trong mô hình véctơ, đồ đƣợc hình thành từ đối tƣợng điểm, đƣờng vùng Các hệ thống sở raster hiển thị, định vị lƣu trữ liệu đồ họa nhờ sử dụng ma trận hay lƣới tế bào Raster có nhiều tầng đồ (địa hình, đ t đai ) so với mô hình vectơ 1.1.2 Cấu trúc liệu địa lý Dữ liệu địa lý nhằm phản ảnh giới thực, cần trả lời đƣợc câu hỏi: Cái gì? (dữ liệu thuộc tính); Ở đâu? (dữ liệu không gian); Khi nào? (thời gian); Tƣơng tác với đối tƣợng khác sao? (quan hệ) Một đối tƣợng liệu địa lý đƣợc coi 56 3.3.2 Giao diện chương trình Hình Giao diện chương trình thử nghiệm Hình Giao diện sau chọn mở file đồ 57 Hình Giao diện trích thủ vân sau chọn file ke 3.4 Đánh giá kết đạt Trong khuôn khổ ứng dụng minh họa, nguồn liệu đặc trƣng đồ không đƣợc đầy đủ Tuy nhiên ứng dụng thể đƣợc cách đầy đủ độ mạnh thuật toán thủy vân xử lý dùng ứng dụng thực tế Với chƣơng trình thử nghiệm, trình nhúng – tách thủy vân đƣợc thực Kết nhúng – tách thủy vân cho th y, thuật toán đảm bảo tính bền vững lƣợc đồ thủy vân nhiều hƣớng tác động lên đồ, có ph p biến đổi co giãn đồ 58 KẾT LUẬN Luận văn tìm hiểu v n đề xung quanh việc ứng dụng phƣơng pháp thủy vân số vào đồ vectơ nhằm bảo vệ quyền sản phẩm hệ thống thông tin địa lý - GIS Trong phần lý thuyết, nội dung GIS, thủy vân số, lƣợc đồ thủy vân số tổng quát, tác giả sâu vào việc phân tích thủy vân số đồ vectơ, đặc điểm riêng đồ vectơ so với loại liệu đa phƣơng tiện khác nhƣ audio, ảnh số, video nhằm xác định r đƣợc lƣu ý hƣớng tiếp cận thủy vân số đồ vectơ Trên sở tìm hiểu thuật toán thủy vân số đồ vectơ đƣợc nhà nghiên cứu giới nƣớc đƣa ra, tác giả tổng hợp lại số thuật toán theo tác giả hiệu việc thủy vân hai loại liệu đặc thù đồ vector: Bản đồ dạng vùng đồ dạng tuyến Trong phần thử nghiệm, tác giả cài đặt lƣợc đồ thủy vân liệu thực tế tác giả sƣu tầm đƣợc để có minh họa trực quan tốt nh t cho thuật toán lựa chọn Kết thực nghiệm cho th y khả ứng dụng thuật toán đồ vector thực tế r t lớn Các đồ vectơ số ngày đƣợc sử dụng cho nhiều ứng dụng công nghệ khác Các v n đề nhƣ vi phạm quyền, xác thực liệu, truy tìm nguồn gốc, ch p, phân phối cách bật hợp pháp làm giới hạn r t nhiều ứng dụng đồ vectơ số nói chung GIS nói riêng Tác giả luận văn mong muốn góp sức đƣa nghiên cứu thủy vân số đồ vectơ vào ứng dụng thực tế để giải v n đề Do tác giả đƣợc tiếp cận với thủy vân số, nhƣ GIS, thời gian giành cho việc nghiên cứu, tìm hiểu nên luận văn tồn hạn chế nh t định nhƣ: tập trung tìm hiểu vài thuật toán cụ thể, chƣa chi tiết vào lƣợc đồ nhiều tác giả khác mà có ứng dụng thực tế; Chƣa đƣợc tiếp xúc với loại liệu khác đồ số hệ thống GIS thực tế Hƣớng nghiên cứu tiếp theo: Thủy vân số lĩnh vực nghiên cứu thú vị thiết thực Tác giả luận văn mong muốn tiếp tục nghiên cứu, tìm hiểu nhiều 59 thuật toán thủy vân đƣợc công bố giới, tổng hợp, phân tích làm thêm thuật toán để cải thiện, tăng cƣờng hiệu ứng dụng thực tế Thực tế chứng minh, ngƣời hệ thống sau thời gian đƣa nhiều thách thức, nhiều v n đề cần giải GIS vậy, đƣợc ứng dụng rộng rãi, GIS đòi hỏi nhiều thiết kế hệ thống, chức phụ trợ nhằm tăng hiệu sử dụng; tăng khả bền vững thủy vân vệ quyền đồ trƣớc nhiều loại t n công ngày đa dạng, phức tạp; độ đo xác đồ (kết hợp ƣu điểm PSNR, sai số cho ph p); xác thực liệu (ngoài giải mã thủy vân phải xác minh tính toàn vẹn liệu);… Đó hƣớng nghiên cứu thú vị đồ vectơ 60 TÀI LIỆU THAM KHẢO Tài liệu tham khảo tiếng Việt: [1] Đặng Văn Đức (2001), Hệ thống thông tin địa lý, NXB Khoa học kỹ thuật, Hà Nội [2] Phạm Đức Thọ, Đặng Văn Đức (2014), Phát triển thuật toán thủy vân mạng lƣới đƣờng phố bền vững ph p biến đổi co dãn đồ, Kỷ ếu Hội thảo FAIR Thái Nguyên Tài liệu tham khảo tiếng Anh: [3] Busch C M Voigt (2002), "Watermarking 2D-Vector data for geographical information systems", Proc of the SPIE, Security and Watermarking of Multimedia Content4675, 621 [4] Enviremental System Reseach Institute - ESRI (1998), ESRI shapefile Technical Description, USA [5] Haowen Yan & Jonathan Li (2012), Blind watermarking technique for topographic map data, Appl Geomat, Springer [6] I-Chang Jou, Yu-Chi Pu (2009), “Blind and Robust Watermarking for StreetNetwork Vector Maps”, Information Technology Journal, Volume [7] Julien Lafaye, Jean Beguec, David Gross-Amblard and Anne Ruas (2007), Geographical Database Watermarking by Polygon Elongation, Technical Report, Laboratoire CEDRIC, France [8] MatthewL., Miller Ingemar J Cox, Jeffrey A Bloom, Jessica Fridrich, Ton Kalker (2008), Digital Watermarking and Steganography Morgan Kaufmann Publishers, MA, USA [9] Shelvie Nidya Neyman, I Nyoman Prama Pradnyana, Benhard Sitohang (2014), “A New Copyright Protection for Vector Map using FFTbased Watermarking”, TELKOMNIKA, Vol.12, No.2 [10] Tawfiq A Abbas, Majid Jabbar Jawad, Sud Sudirman (2013), “Robust Watermarking of Digital Vector Maps for Copyright Protection”, Proceding of PGNet, ISBN: 978-1-902560-27-4 [11] XiaMu Niu (2006), "A survey of digital vector map watermarking", International Journal of Innovative Computing, Information and Control PHỤ LỤC PHỤ LỤC 1: PHÉP BIẾN ĐỔI FOURIER RỜI RẠC 1.1 Biến đổi Fourier rời rạc chiều X t dãy rời rạc * ( ) + Biến đổi Fourier rời rạc thuận ngƣợc chiều xác định ( )( ) ( ) ( ) với (1) , ( )( ) ( ) ( ) với (2) 1.2 Biến đổi Fourier rời rạc hai chiều Cặp biến đổi Fourier rời rạc hai chiều thuận ngƣợc cho ( )( ) ( )( Và ( ) ) ( / ) (3) / (4) 1.3 Phép biến đổi Cosin rời rạc Cặp biến đổi Cosin rời rạc chiều thuận ngƣợc cho ( ) ( ) ( ) (5) ( ) ( ) ( ) (6) {√ Cặp biến đổi Cosin rời rạc hai chiều thuận nghịch xác định ( ) ( ) ( ( với ( với ) ( ) ) ( ) (7) (8) ) ( ) PHỤ LỤC 2: CẤU TRÚC FILE SHAPEFILE 2.1 Main file header Main file header có độ dài 100 bytes trƣờng file header với vị trí byte, giá trị, kiểu thứ tự byte chúng Trong bảng này, vị trí đƣợc tƣơng đối tính từ vị trí bắt đầu file Bảng II.1 Mô tả Main file header Position Field Value Type Byte Order Byte File Code 9994 Integer Big Byte Unused Integer Big Byte Unused Integer Big Byte 12 Unused Integer Big Byte 16 Unused Integer Big Byte 20 Unused Integer Big Byte 24 FileLength FileLength Integer Big Byte 28 Version 1000 Integer Little Byte 32 ShapeType ShapeType Integer Little Byte 36 Bounding Box Xmin Double Little Byte 44 Bounding Box Ymin Double Little Byte 52 Bounding Box Xmax Double Little Byte 60 Bounding Box Ymax Double Little Byte 68* Bounding Box Zmin Double Little Byte 76* Bounding Box Zmax Double Little Byte 84* Bounding Box Mmin Double Little Byte 92* Bounding Box Mmax Double Little * Không dùng có giá trị 0.0, không độ đo kiểu Z Giá trị độ dài file tổng độ dài file theo đơn vị từ 16-bit, bao gồm 50 từ (tức 100 byte) file header T t hình dạng không null shapefile phải có kiểu shape Các giá trị kiểu đƣợc cho Bảng II.2.Các giá trị shape type Giá trị Kiểu Shape Null Shape Point PolyLine Polygon MultiPoint 11 PointZ 13 PolyLineZ 15 PolygonZ 18 MultiPointZ 21 PointM 23 PolyLineM 25 PolygonM 28 MultiPointM 31 MultiPatch Hộp biên (Bounding Box) main file header chứa phạm vi thực shape file: Hình chữ nhật b nh t phủ toàn shape có cạnh song song với trục X Y (và có khả mở rộng với trục M Z) Nếu shapefile rỗng (không có ghi nào) giá trị Xmin, Ymin, Xmax, Ymax không đƣợc xác định 2.2 Các header ghi Header cho ghi chứa số hiệu ghi độ dài nội dung ghi Các header ghi có độ dài cố định byte Bảng II.3 mô tả trƣờng header ghi, với vị trí đƣợc tính từ đầu ghi tƣơng ứng Bảng II.3 Mô tả header ghi Position Field Value Type Byte0 Record Number Số hiệu ghi Byte4 Content Length Byte Order Integer Big Độ dài nội dung Integer Big Số hiệu ghi Độ dài nội dung ghi độ dài phần nội dung ghi theo đơn vị từ 16-bit Do đó, ghi đóng góp số lƣợng từ 16-bit (4 + độ dài nội dung) vào tổng độ dài file (đƣợc chứa Byte 24 file header) 2.3 Nội dung ghi Nội dung ghi shapefile bao gồm kiểu shape, theo sau liệu hình học shape Độ dài nội dung ghi phụ thuộc vào số thành phần số đỉnh shape Tiếp sau trình bày số nội dung ghi theo kiểu shape hệ quy chiếu X, Y Kiểu Point (điểm) Một điểm bao gồm cặp tọa độ kiểu double-precision theo thứ tự X, Y Point { Double X // X coordinate Double Y // Y coordinate } Bảng II.4 Nội dung ghi biểu diễn điểm Position Field Value Type Number Byte Order Byte ShapeType Integer Little Byte X X Double Little Byte 12 Y Y Double Little Kiểu MultiPoint (đa điểm) Biểu diễn tập điểm, nhƣ sau: MultiPoint { Double[4] Box // Bounding Box Integer NumPoints // Number of Points Point[NumPoints] Points // The Points in the Set } Hộp Biên (Bounding Box) đƣợc lƣu theo thứ tự Xmin, Ymin, Xmax, Ymax Bảng II.5 Nội dung ghi biểu diễn đa điểm Position Field Value Type Number Byte Order Byte Shape Type Integer Little Byte Box Box Double Little Byte 36 NumPoints NumPoints Integer Little Byte 40 Points Points Point NumPoints Little Kiểu PolyLine (đa đoạn) Một PolyLine tập có thứ tự đỉnh bao gồm nhiều thành phần Một phần thành phần liên thông gồm nh t hai đỉnh Các phần không liên thông với phần khác Các phần không cắt với phần khác Do đặc tả không c m điểm liên tục với tọa độ trùng nhau, nên đọc shapefile phải kiểm soát đƣợc trƣờng hợp nhƣ Việc dẫn tới phần thoái hóa có độ dài không không đƣợc ph p PolyLine { Double[4] Box // Bounding Box Integer NumParts // Number of Parts Integer NumPoints // Total Number of Points Integer[NumParts] Parts // Index to First Point in Part Point[NumPoints] Points // Points for All Parts } Các trƣờng PolyLine đƣợc mô tả chi tiết sau đây:  Box: Hộp Biên cho PolyLine đƣợc lƣu theo thứ tự Xmin, Ymin, Xmax, Ymax  NumParts: Số phần PolyLine  NumPoints: Tổng số điểm t t phần PolyLine  Parts: Một mảng có độ dài NumParts chứa số điểm mảng điểm Các số mảng đƣợc đánh từ  Points: Một mảng có độ dài NumPoints  Bảng II.6 Nội dung ghi chi tiết đa đoạn Position Field Value Type Number Byte Order Byte ShapeType Integer Little Byte Box Box Double Little Byte 36 NumParts NumParts Integer Little Byte 40 NumPoints NumPoints Integer Little Byte 44 Parts Parts Integer NumParts Little Byte X Points Point NumPoints Little Points Chú ý: X = 44 + * NumParts Kiểu Polygon (Đa giác) Một đa giác bao gồm một vành Một vành chuỗi đóng liên thông nh t điểm, không tự cắt Một đa giác chứa nhiều vành Thứ tự định hƣớng vành mặt vành phía đa giác Lân cận bên phải ngƣời quan sát dọc theo vành theo thứ tự đỉnh thuộc vùng phía đa giác Các đỉnh vành định nghĩa lỗ rỗng đa giác theo hƣớng ngƣợc chiều kim đồng hồ Các đỉnh vành đơn có thứ tự thuận chiều kim đồng hồ Các vành đa giác đƣợc cho part (phần) Lƣu ý điểm liên tiếp không nh t thiết phải phân biệt, nên đọc shapefile phải xử lý tình C u trúc đa giác giống nhƣ c u trúc đa đoạn, nhƣ sau Polygon { Double[4] Box // Bounding Box Integer NumParts // Number of Parts Integer NumPoints // Total Number of Points Integer[NumParts] Parts // Index to First Point in Part Point[NumPoints] Points // Points for All Parts } Các trƣờng đa giác đƣợc mô tả chi tiết nhƣ sau:  Box: Hộp biên đa giác theo thứ tự Xmin, Ymin, Xmax, Ymax  NumParts: Số vành đa giác  NumPoints: Tổng số điểm t t vành  Parts: Một mảng gồm NumParts phần tử, chứa số điểm vành mảng Points  Points: Một mảng gồm NumPoints phần tử Các điểm cho vành nối tiếp điểm vành nhƣ Một ví dụ đa giác gồm vành 10 điểm nhƣ sau: Hình II Ví dụ đa gi c gồm hai vành Thứ tự đỉnh đƣợc lƣu trữ shape file đƣợc minh họa Hình sau: Hình II Lưu trữ đa gi c shapefile Bảng II.7 Nội dung ghi đa giác Position Field Value Type Number Byte Order Byte ShapeType Integer Little Byte Box Box Double Little Byte 36 NumParts NumParts Integer Little Byte 40 NumPoints NumPoints Integer Little Byte 44 Parts Parts Integer NumParts Little Byte X Points Point NumPoints Little Points Chú ý: X = 44 + * NumParts Ngoài shapefile có c u trúc shape khác nhƣ: PointM, MultiPointM, PolyLineM, PolygonM (M độ đo), PointZ, MultiPointZ, PolyLineZ, PolygonZ (trong hệ quy chiếu X, Y, Z) c u trúc MultiPatch (đa mảnh) PHỤ LỤC 3: SHARPMAP SharpMap thƣ viện mã nguồn mở hỗ trợ chức đồ dành cho ứng dụng desktop ứng dụng web SharpMap hỗ trợ hiển thị kiểu liệu Shapefile, PostGreSQL/PostGIS, OLEDB, SQLServer, Oracle, SpatiaLite kiểu liệu khác thông qua thƣ viện chuyển đổi GDAL/OGR Phiên ổn định SharpMap 1.1 Phiên phát triển SharpMap 2.0 Mã nguồn SharpMap đƣợc quản lý theo hệ thống Subversion (SVN), lƣu trữ địa http://sharpmap.codeplex.com/SourceControl/latest Phiên thử nghiệm đƣợc đặt tên SharpGIS, công bố vào tháng năm 2005 Ở này, thƣ viện hiển thị đƣợc nhiều kiểu liệu vector, liệu PostGIS Tuy nhiên chƣa hiển thị đƣợc liệu ảnh công cụ thao tác đồ sơ sài Hình III Lược đồ c c phi n SharpMap Kiến trúc SharpMap phiên v2.0 nhƣ Hình III.2 Đây kiến trúc đƣợc thiết kế trƣớc, phần mã nguồn thực thi đƣợc phát triển để hoàn thiện nhƣ thiết kế Hình III.2 Kiến trúc SharpMap Phần giao diện hiển thị bao gồm control có chức hiển thị đồ Có loại control dành cho ứng dụng sử dụng framework WPF Windows Form Có control dành cho ứng dụng web Phần giao diện hiển thị đƣợc tách riêng kiến trúc thể linh động mã nguồn bên nhân SharpMap Phần trình diễn đóng vai trò ngƣời điều phối vùng liệu đƣợc hiển thị lên control phần giao diện hiển thị Bên cạnh đó, đối tƣợng trình diễn đảm nhận việc thể màu sắc, nhãn đối tƣợng thuộc tính đối tƣợng Phần đồ bao gồm đối tƣợng đƣợc hiển thị đồ gọi lớp đồ công cụ thao tác đồ đƣợc xây dựng sẵn Đối tƣợng liệu đối tƣợng lƣu trữ thông tin liệu đƣợc đọc vào từ nguồn Dữ liệu đƣợc đọc vào thông qua “Provider” Phiên ổn định tháng 12/2014 SharpMap v1.1 Kiến trúc phiên thiếu m t phần giao diện hiển thị so với phiên v2.0 Do đó, lập trình viên cần xây dựng riêng cho control đóng vai trò hiển thị đồ thông tin liên quan khác nhƣ tọa độ, t lệ, … Phần trình diễn tách riêng đối tƣợng đảm nhận việc hiển thị liệu vector, thành phần khác nhƣ nhãn, màu sắc, liệu ảnh đƣợc điều phối bên nhân SharpMap

Ngày đăng: 11/08/2016, 16:47

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan