全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:907
推到 Plurk!
推到 Facebook!

想請問一下如何將小區域的範圍變成跟背景一樣的顏色

尚未結案
小慶
一般會員


發表:45
回覆:31
積分:15
註冊:2004-09-29

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-27 14:41:36 IP:61.221.xxx.xxx 未訂閱
各位前輩....小弟我有一個問題 就是說........一張經過二質化後的圖 (640*480),圖中只有兩種顏色即白點(pixel=255)和黑點(pixel=0) 因為經過二質化後...會產生小區域(紅色圈出來的地方), 小弟我只想保留人形就好.....想把小區域(紅色圈出來的地方)變成黑色 (pixel=0)........ 不知道程式該怎麼寫......... 圖案如下:
小慶
一般會員


發表:45
回覆:31
積分:15
註冊:2004-09-29

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-27 14:43:24 IP:61.221.xxx.xxx 未訂閱
謝謝各位前輩的指導...... 正在努力學習中的小弟....
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-27 19:48:00 IP:221.169.xxx.xxx 未訂閱
請參考 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=57709 利用Connect函式傳回的區塊大小,太小的就把該區塊都填入黑色即可 要不那個程式會傳回最大區塊,應該也能達成你的目的
光光
一般會員


發表:19
回覆:19
積分:7
註冊:2004-10-30

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-11-01 18:54:48 IP:61.221.xxx.xxx 未訂閱
前輩.........有時候....我作的圖 會出現如下: 然後按下ok後程式停留在這一行 map[y][x]=id; 想請前輩幫我看看......謝謝......光光留....
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-11-01 18:57:47 IP:220.135.xxx.xxx 未訂閱
引言: 前輩.........有時候....我作的圖 會出現如下: 然後按下ok後程式停留在這一行 map[y][x]=id; 想請前輩幫我看看......謝謝......光光留....
別鬧了~~這裡還有誰能當你的前輩? 請你重新確認一下你的年齡。 光光 會員 男64 線上 Taiwan 2 篇發表文章 0 分答題得分 0.4 分總積分
光光
一般會員


發表:19
回覆:19
積分:7
註冊:2004-10-30

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-11-01 20:11:20 IP:163.23.xxx.xxx 未訂閱
程式比我厲害的都算前輩囉............
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-11-01 23:03:37 IP:221.169.xxx.xxx 未訂閱
之所以會發生 stack overflow是因為程式是採用遞迴呼叫自己的方式來處理, 當白色區域太大的時候,遞迴的程度太深,stack負荷不了,所以產生了stack overflow的問題... 解決方法: 1.換個非遞迴的方法... 2.把stack加大看看,在project->options->linker->PE file options 改看看 max stack size.. 3.修改程式,當count累積到某種程度之後就強制退出Connect函式(恩,這是沒有辦法之中的辦法.. Orz..),反正太大的區塊一定不是你想刪除的地方 ^^"
光光
一般會員


發表:19
回覆:19
積分:7
註冊:2004-10-30

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-11-01 23:18:13 IP:61.221.xxx.xxx 未訂閱
不好意思........可不可以請高手們 1.非遞迴方式怎麼改阿 2.把stack加大看看,在project->options->linker->PE file options 改看看 max stack size.......要改多少阿..... 3.count.....的程式..要怎麼加進去呢 ......謝謝......光光留....
光光
一般會員


發表:19
回覆:19
積分:7
註冊:2004-10-30

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-11-02 19:15:08 IP:163.23.xxx.xxx 未訂閱
各位高手.....不知道我提的問題....大家可不可以幫我解決.... 謝謝各位....光光留....
m58610
初階會員


發表:22
回覆:83
積分:36
註冊:2003-09-07

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-11-20 03:23:10 IP:59.104.xxx.xxx 未訂閱
可以用opening對白色物體作處理,就是先對白物體作侵蝕(次數自訂,要能讓小物體侵蝕光),再用擴張(次數跟侵蝕一樣),將要留下的物體大小大致回復.
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-11-20 15:22:51 IP:221.169.xxx.xxx 未訂閱
m58610 的方法缺點在於侵蝕和擴張之後,原圖會有些變化 如果不介意這點的話,倒是可以採用...    我剛剛測了一下,用我之前寫的程式,估計每一次呼叫Connect函式,需要配置28bytes的記憶體 所以最差的情況下stacks需要配置的空間=最大的影像區塊大小*28    BCB原先配置最大可達0x100000的stacks,有1048576個bytes 可以容忍你最大區塊在37000個pixels附近    算一下,就知道你需要約多少的stacks空間了...    要不然配置Max stacks size 0x1000000 應該也很夠了 (不夠的話,後面就在加0上去,加到能用為止...) 為了減少
系統時間:2024-05-17 9:57:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!