Re: [問題] 影像放大之處理

看板C_and_CPP作者 (23歲九局下半)時間14年前 (2009/12/20 04:03), 編輯推噓6(6020)
留言26則, 4人參與, 最新討論串2/2 (看更多)
遇到的問題:由於VictorTom大大的指教,小弟把程式完成了,但仍有點小問題, 放大2倍時(512->1024)正常,其他倍數圖片會變的類似半色調,非灰階. 開發平台: Dev-C++ http://nopaste.csie.org/8f26d 我的code..很抱歉沒看置底,下次我會改進. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.42.203.74

12/20 04:21, , 1F
難道你沒發現置底文章裡有一篇: [公告] 張貼程式碼 Orz
12/20 04:21, 1F

12/20 04:23, , 2F
放大其他倍的程式在哪??還是你只是把z的值從2換掉??
12/20 04:23, 2F

12/20 04:24, , 3F
基本上你的程式寫成這樣, 要有彈性有相當程度的地方要改
12/20 04:24, 3F

12/20 04:25, , 4F
也就是說如果你想放大其他倍, 3, 4, 甚至1.2, 0.6等等,
12/20 04:25, 4F

12/20 04:25, , 5F
你的vectors[][]要懂得用動態配置的, 目前寫死成1024的
12/20 04:25, 5F

12/20 04:26, , 6F
code難以滿足需求, 包含跑迴圈的size, fwrite的size.
12/20 04:26, 6F

12/20 04:27, , 7F
再來, 如果至少你想做到放大整數倍又只要改個z值而不用
12/20 04:27, 7F

12/20 04:28, , 8F
每次都要修程式碼, 你的第二段迴圈要做反向思考; 也就是
12/20 04:28, 8F

12/20 04:29, , 9F
說, 你現在的程式相當於是依來源(image[][])放到放大後
12/20 04:29, 9F

12/20 04:29, , 10F
的陣列(vectors[][])去, 試著反過來, 從每個vectors[][]
12/20 04:29, 10F

12/20 04:29, , 11F
去反推出它應該在image[][]裡的哪個位置.
12/20 04:29, 11F

12/20 04:39, , 12F
不想動態配置的話, 就替vectors[][]開一個保證夠大的,
12/20 04:39, 12F

12/20 04:40, , 13F
但是另外用一個變數記錄真正需要處理的size跑迴圈與
12/20 04:40, 13F

12/20 04:40, , 14F
寫檔(也就是跑迴圈fwrite, 每次只寫需要的size出去) :)
12/20 04:40, 14F

12/20 12:05, , 15F
我今天家教正好要教影像縮放,等我學生寫完我再放上來
12/20 12:05, 15F

12/20 12:45, , 16F
謝謝V大跟p大
12/20 12:45, 16F

12/20 13:09, , 17F
底置文有貼CODE的網站~
12/20 13:09, 17F
※ 編輯: takeshicjy 來自: 114.42.78.243 (12/20 13:11)

12/20 13:27, , 18F
現在當家教連程式都要教嗎@_@"
12/20 13:27, 18F

12/20 18:14, , 19F
我會的東西不多~程式家教好難找~ˊˋ
12/20 18:14, 19F

12/20 18:14, , 20F

12/20 18:15, , 21F
用//////包裝起來的地方是重點
12/20 18:15, 21F

12/20 18:15, , 22F
我是寫在視窗框架上 我把整個函式複製過來了
12/20 18:15, 22F

12/20 18:16, , 23F
只需要看你需要的部份
12/20 18:16, 23F

12/20 18:17, , 24F
我盡量註解清楚了,一些步驟也分成兩三行處理 放在名稱
12/20 18:17, 24F

12/20 18:17, , 25F
特別的變數中 如果還是有不清楚的地方可以問我~
12/20 18:17, 25F

12/20 19:29, , 26F
謝謝p大 不過現在這網站好像維修中 等等再來研究
12/20 19:29, 26F
文章代碼(AID): #1BBJ67lf (C_and_CPP)
文章代碼(AID): #1BBJ67lf (C_and_CPP)