區域填充算法


三、區域填充算法——>【要求:區域是連通的

區域:指已經表示成點陣形式的填充圖形,是象素的集合。
1、區域有兩種表示形式:



1)內點表示:枚舉出區域內部的所有象素,內部所有象素着同一個顏色,邊界像素着與內部象素不同的顏色。
2)邊界表示:枚舉出區域外部的所有象素,邊界上的所有象素着同一個顏色,內部像素着與邊界象素不同的顏色。

2、區域分為:

1)四向連通區域:從區域上一點出發可通過【上、下、左、右】四個方向移動的組合,在不越出區域的前提下,到達區域內的任意象素。
2)八向連通區域:從區域上一點出發可通過【上、下、左、右、左上、右上、左下、右下】八個方向移動的組合,在不越出區域的前提下,到達區域內的任意象素。

區域填充:將區域內的一點(常稱【種子點】)賦予給定顏色,然后將這種顏色擴展到整個區域內的過程。

簡單四連通種子填充算法(區域填充遞歸算法)——>用【棧結構】來實現
原理——>種子象素入棧,當【棧非空】時重復如下三步:




【不足】

  a)某些象素會多次入棧,降低算法效率,棧結構占空間;
        b)遞歸執行算法簡單,但效率不高,區域內每個象素都要進/出棧
        c)費時費內存;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM