我在這裏尋找一種算法,獨立於特定的編程語言。骯髒的矩形的最佳設置
問題:
我們有一個2維顯示區域 (認爲像素的簡單的緩衝)。週期性地,一些像素被 改變。我們需要找到一組包含所有 變化像素的一組 矩形。
這將是微不足道的,但不受歡迎的, 來計算一個單一的,可能的大矩形,封裝所有 變化的像素。我們寧願有 多個,更小,緊的 矩形下降到指定的最小 大小(這是一個變量,可以是 變化)。
例如,假設 整個顯示區域內,在 幾個像素的左上角改變,並且在右下角 一個 幾個像素改變。我們不想計算整個 區域的一個 單個髒矩形 - 我們需要兩個髒 矩形:左上方的小尺寸 和右下方的小尺寸 。
表現是至關重要的,因此這個問題。
這個問題在所有的時候都會出現,絕對是在視頻編解碼器和遠程桌面壓縮領域,我猜想。就我而言,在圖形圖像操作過程中,這是一個反覆出現的問題,涉及多個用戶同時在共享區域中繪圖。
有沒有人知道已發佈的算法或知道過去使用過的解決方案?
謝謝!
你如何定義「性能」?你有什麼其他限制?你有具體的度量來判斷好的解決方案嗎? – Karmastan 2011-03-23 20:00:35
由於我要求的是一種獨立於特定語言或平臺的算法,因此很難具體使用度量標準,但我的意思是一種算法,它儘可能少地找到答案,而不是某種例如,對該區域中的每個像素執行多次強力掃描。我會用與測量Bresenham畫線等算法相同的方式來衡量它:它在足夠少的操作中找到了正確的答案,因此很難設想使用更少的操作。 – 2011-03-23 20:25:30