• 沒有找到結果。

Computer Organization and Assembly Languages Final project

N/A
N/A
Protected

Academic year: 2022

Share "Computer Organization and Assembly Languages Final project"

Copied!
9
0
0

加載中.... (立即查看全文)

全文

(1)

Computer Organization and Assembly Languages Final project

數學四 b93201010 施鴻逸 數學四 b93201029 林珍綺

(2)

Index

Motivation ………3

Implementation……….4

Discussion ……….….9

Reference ……….…..9

(3)

 Motivation

作業三之中,題目曾要求我們對圖片作 Blur(模糊影像)的效果,先以組合語言建 立一個名為 myfilter 的 assembler source 檔,再用 GBA 模擬器跑出結果。

然而,我們好奇組合語言在影像處理的其他相關功能上,例如說 Darken(調暗),

Lighten(調亮),Zoom in(縮小),Zoom out (放大),Scaling(伸縮變形),Mirror(鏡射)甚 至 Rottation(旋轉)等等是否也能有延伸實做的空間,若是能力許可,更期許一般影 像處理軟體所必備的基本功能都在探討範圍之內,而這就是此次我們 final project 所要研究的重心。

(4)

 Implementation

<

原圖原圖原圖原圖>

I. Blur – 影像模糊影像模糊影像模糊 影像模糊

以每一個 pixel 為中心,綜何鄰

近 8 個 pixel 的值作平均,以此值為 代表輸出。若 pixel 位於邊界上則

只取相鄰 6 值(包括自己)的平均,

若在角落上則只取 4 個(包括自己)。

 9 格相加除以 9

 6 格相加除以 6

 4 格相加除以 4

II. Darken –調暗調暗調暗調暗畫面畫面畫面畫面

調整 ncolor b ( ncolorg , ncolor r) 三者的值。加上任意常數 之後(若超過範圍則取最大值 31)即 能調整畫面亮度,所加常數越大則 亮度越低,畫面也越暗。

p

p

p

(5)

例如:

ncolor +

III. Lighten –調亮調亮調亮調亮畫面畫面畫面畫面

原理與 Darken 相同,只是將 加法改成減法。

例如:

ncolor -

IV. Highlight – 反白效果反白效果反白效果 反白效果

調整 ncolor b , ncolor g 與 ncolor r 三者的值使 0 變 1 而 1 變 0,再與 0111111111111111 作 xor 的運算。

V. Zoom in – 縮小圖案縮小圖案縮小圖案 縮小圖案

每四格中只取一格的 pixel 值為代表輸出,最後結果 只有原圖的四分之一大小。

b g r

0 00100 00100 00100

b g r

0 00100 00100 00100

(6)





VI. Zoom out – 放大圖案放大圖案放大圖案放大圖案

原理與 Zoom in 近似,只是將 一個 pixel 值擴充至 4 格的範圍(Zoom in 原理逆向操作)。若想提升解析度使 其放大後馬賽克程度降低並使周邊看 起來較柔和,擴充後的 pixel 值在遇 到”臨界處”時(與相異 pixel 值交界 處),可取兩者的加總平均。



VII. Stretch – 伸縮變形伸縮變形伸縮變形 伸縮變形

利用 Zoom in 或 Zoom out 的原理,可對指定區域做 x 座標或 y 座標的伸縮變 形。

p p p p

p p p p

p p p p p p p p

1 2 3 4 5 6 7 8

1 1 2 2 3 3 4 4 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 5 5 6 6 7 7 8 8

( b) X-Stretch x 座標往內縮成一半大小 ( a) Y-Stretch

y 座標往內縮成一半大小

(7)

VIII. Mirror – 鏡射效果鏡射效果鏡射效果鏡射效果

在讀取所有 pixel 值之後,針對欲鏡射的方向選取鏡射軸,調整資料使資料以對 稱鏡射軸的方向依序輸出。

IX. Transpose

調整 pixel 的 x 座標與 y 座標使其作伸縮 變化與固定比例偏移(為基本的 translation 與 stretch 的延伸)。

X. Rotation – 旋轉畫面旋轉畫面旋轉畫面旋轉畫面

在讀取所有 pixel 值之後,針對欲輸出的方向依序輸出即可。

( b) X-Mirror

x 座標對 y 軸做鏡射 ( a) Y-Mirror

y 座標對 x 軸做鏡射

( a ) Rotation 90 圖片逆時鐘旋轉 90 度

( b) Rotation 180 圖片逆時鐘旋轉 180 度

(8)

( c ) Rotation 270 圖片逆時鐘旋轉 270 度

(9)

 Discussion

在實作過以上幾個基本功能後,我們發現影像處理軟體中的許多功能 不外乎是固定幾項基本功能的延伸,例如色調的改變就是調整畫面的明暗 程度,近一步推廣也許可以調整色度與色相變化(若在參數取樣對象上做點 改變)。至於放大縮小功能更是不在話下,利用此原理使畫面有往任意方向 伸縮延展的可能,加上基本的平移功能(translation)讓畫面變形的更徹底,

其他還有鏡射與旋轉等等,都讓影像處理有更多元的變化選擇。雖然我們 研究的組合語言技術還不夠成熟精進,無法徹底探討專業軟體強大功能之 所在,但是其實電腦圖學中的基本指令皆已在我們實作成果之中,期待以 後還有更進一步的空間。

 Reference

Example #2 image processing library 前人寶貴的參考資料 http://www.csie.ntu.edu.tw/~cyy/courses/assembly/07fall/lectures/

教授上課豐富的投影片 ^_________^ 寒假快樂!!!

參考文獻

相關文件

• 陳佳萍: 自製影片的英語配音真是照妖鏡,聽到 自己的發音還真是需要加油。第一個班級先作曲

CLIL「整合式」雙語教學的立論之一,就是共通語適合用來作專業以外,或者輔助

而我們所用的範圍偵測是屬於「矩形偵測」 ,也就是將每個 sprite 都視為是 一個矩形,而因為我們知道 sprite 在畫面中的(X,Y)座標,也知道每個 sprite 的大

擁有一顆 RISC 架構的 32 位元 CPU ARM7TDMI,和一 顆 CISC 架構的 8 位元 CPU。其中 8 位元的 CISC CPU 是用來相容 Game Boy 和 Game Boy Color

(過去稱作進階精簡指令集機器(Advanced RISC Machine) ,更早稱作 Acorn RISC Machine)是一個 32 位元精簡指令集 (RISC) 中央處理器

MIPS 處理器是個以管線方式工作的處器,因此執行程式碼的速度,就相當 依賴管線的工作方式。絕大多數 MIPS 指令需要在管線 RD 階段取得足夠的 operands,並且在緊接著 ALU 階段之後產生結果。由於

從以上的比較來看,RISC 與 CISC 各有優劣,而 RISC 的實用性則更強一些,應 該是未來處理器架構的發展方向。但事實上,由於早期的很多軟體是根據 CISC 設計的,單純的 RISC

資工二 B96902013 邱柏睿 資工二 B96902023 游舜翔 資工二 B96902041 吳承恩... (圖三)