intTypePromotion=1
ADSENSE

Bài giảng Đồ họa Raster: Các thuật toán tô màu - Bùi Tiến Lên

Chia sẻ: Na Na | Ngày: | Loại File: PPT | Số trang:44

141
lượt xem
16
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Đồ họa Raster: Các thuật toán tô màu có nội dung trình bày bài toán tô màu, các hướng tiếp cận, tô màu theo lân cận, thuật toán cải tiến, tô hình tam giác và một số nội dung khác.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Đồ họa Raster: Các thuật toán tô màu - Bùi Tiến Lên

  1. ĐỒ HỌA RASTER CÁC THUẬT TOÁN TÔ MÀU Giảng viên : Bùi Tiến Lên
  2. Bài toán tô màu Tô màu là thao tác tìm các điểm sáng “nằm bên trong” một vùng khép kín. Input : Vùng S Output : {(x1, y1), (x2, y2) … (xn, yn)} Trang 2
  3. Các hướng tiếp cận Có hai phương pháp - Tô màu theo lân cận - Tô màu theo dòng quét Trang 3
  4. Tô màu theo lân cận
  5. Lân cận là gì ? Có hai loại lân cận : lân cận 4 và lân cận 8. Lân cận 4 N4(x, y) = {(x-1, y), (x, y+1), (x+1, y), (x, y-1)} Lân cận 8 N8(x, y) = {(x-1, y), (x-1, y+1), (x, y+1), (x+1, y+1), (x+1, y), (x+1, y- 1), (x, y-1), (x-1, y-1)} trên trái y trái (x,y) phải y (x,y) dưới x x Trang 5
  6. Thuật toán đệ qui bước 1 Kẻ biên vùng cần tô bước 2 Xác định một điểm (x, y) nằm bên trong vùng cần tô bươc 3 Tô điểm (x, y), sau đó tô loang sang những điểm lân cận y x Trang 6
  7. Cài đặt đệ qui // To loang void BoundaryFill(CDC *pDC, int x, int y, int fill_color, int boundary_color) { int color; color = pDC->GetPixel(x, y); if((color != fill_color) && (color != boundary_color)) { pDC->SetPixel(x, y, fill_color); BoundaryFill(pDC, x-1, y, fill_color, boundary_color); BoundaryFill(pDC, x, y+1, fill_color, boundary_color); BoundaryFill(pDC, x+1, y, fill_color, boundary_color); BoundaryFill(pDC, x, y-1, fill_color, boundary_color); } } Trang 7
  8. Nhận xét thuật toán đệ qui Ưu điểm Khuyết điểm Có thể tô vùng có hình dạng bất Không thể dùng để tô các vùng kỳ. có kích thước lớn. kích thöôùc !! kích thöôùc Trang 8
  9. Thuật toán cải tiến bước 1 Cất điểm hạt giống đầu tiên vào kho. bước 2 Lặp nếu kho không rỗng - c1 Lấy điểm hạt giống. - c2 Tô điểm hạt giống sau đó tô loang sang trái và sang phải. - c3 Bổ sung những điểm hạt giống mới vào kho từ dòng trên và dòng dưới. Trang 9
  10. Thuật toán cải tiến hạt giống : điểm sáng kho : chứa các điểm hạt giống Trang 10
  11. Thuật toán cải tiến Minh họa tô loang biên biên Trang 11
  12. Thuật toán cải tiến Tiêu chuẩn để là điểm hạt giống 1. Điểm này chưa được tô và không phải điểm biên. 2. Điểm này thoả : - Điểm trái đầu tiên. - hoặc bên trái của nó là điểm biên (nếu nó không phải là điểm trái đầu tiên). Trang 12
  13. Thuật toán cải tiến Minh họa bổ sung những điểm hạt giống mới biên biên hạt giống biên biên biên Trang 13
  14. Tô theo lân cận - Một số vấn đề Sử dụng lân cận nào ? Trang 14
  15. Tô theo lân cận - Một số vấn đề Đường biên màu gì ? Trang 15
  16. Tô theo lân cận - Một số vấn đề Trang 16
  17. Tô màu theo dòng quét
  18. Khái niệm dòng quét Dòng quét là dòng điểm sáng trên màn hình y Trang 18
  19. Tô hình chữ nhật l r y t y b Trang 19
  20. Tô hình tam giác Input (X1, Y1), (X2, Y2), (X3, Y3) Cách tô bước 1 : Sắp xếp các đỉnh Y1 ≤ Y2 ≤ Y3 bước 2 : Phân trường hợp Theo tung độ Trang 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2