2009年3月26日 星期四

數位影像負片處理

這學期選了一門還不錯的課,數位影像處理。

從很久以前就對這一方面還滿有興趣,但一直沒有時間去好好的瞭解

就趁著系上剛好有開這門課,當作一個學習的動力
(說沒時間是假的,明明就是愛找藉口#$%$#@)

接下來就來一個小程式,數位負片處理 :D

在開始程式之前稍微介紹一下,數位影像的概念

通常一張全彩的影像,包含了RGB共3Byte

而每一顏色使用1Byte表示之

其亮暗程度可分為0~255,0最暗255最亮

相信到這邊,都不難理解,接下來就可以進入主題『數位負片影像處理』

數位負片顧名思義就是,亮變暗而暗變亮

因此處理方式如下↓

負片值 = 255 - 原始影像
255 = 255 - 0
0 = 255 - 255
30 = 255 - 225

上述範例,不難看出最亮變成最暗,最暗變成最亮

只要將影像上的每一點,經過這樣的處理就能得到負片效果

以下就來看看實際處理後的效果

[原始影像]


[全彩負片]


雖然這個程式非常的簡單,不過至少是認識數位影像處理的第一步!!

C語言監控IO

最近在寫R232的連線程式,一開始的做法是使用timer定期去抓buffer裡的資料

但由於程式要求的資料量不大,此方法會造成cpu無謂的loading

但最近再翻GTK時,突然發現一個好用的函式如下↓


gint gdk_input_add( gint source,GdkInputCondition condition,
GdkInputFunction function, gpointer data);

這個函式可以監控IO當資料有所進出時,可執行自訂函數。

參數1: source 即為檔案描述器

參數2: condition 為要監控的模式
GDK_INPUT_READ 當檔案描述器有資料可供讀取時,則執行自訂函數
GDK_INPUT_WRITE 當檔案描述器已準備好可寫入時,則執行自訂函數

參數3: function 自訂函數名稱

參數4: 傳入自訂函式之參數

回傳值: 傳回一個標籤tag,可用此標籤移除對IO的監控如下↓
void gdk_input_remove(gint tag);

自訂函式宣告格式:
void input_callback( gpointer data,
gint source,
GdkInputCondition condition );

原先使用timer方式讀取IO,CPU的負載平均30~40%左右

使用此方法負載確只有20%,很明顯此方式可有效降低負載。 :)

2009年2月4日 星期三

解決 Flash Player 10 亂碼問題

最近發現Flash Player顯示出亂碼(方塊字)

解決方法如下↓

修改 /etc/fonts/conf.d/49-sansserif.conf

將sans-serif改為

文泉驛正黑體

it's so easy~ :)

2009年1月21日 星期三

謎:ubuntu能不能看youtube!?!

如果ubuntu不能看youtube,那麼我人生會黑一半

沒辦法youtube上太多白痴的影片了,常會戳中我的點 XD

那麼ubuntu到底能不能看youtube,答案是肯定的!!

只要將flash player裝起來就可了!!

作法如下:

首先到ADOBE下載flash player的套件包

Adobe金呷就甘心ㄟ~~直接提供套件包 :D

sudo dpkg -i install_flash_player_10_linux.deb

打開Firefox就可以開開心心的youtube了!!! :)

2009年1月20日 星期二

安裝中文輸入法

最近剛灌好ubuntu,大致上都沒什麼問題

唯一有問題的就是內建的中文輸入法scim

偶而無預警的當掉,常常msn聊到正開心就突然掛點了 :(

奇摩子當然好不起來,於是google一下

發現原來有另一套中文輸入軟體叫作gcin

安裝方法如下

sudo apt-get install gcin im-switch

im-switch -s gcin

sudo /etc/init.d/gdm restart 重開視窗服務,或者直接登出

系統 > 管理 > gcin輸入法設定

這樣大功告成了,改換gcin後就沒再當過了 it's great!! :)

2009年1月18日 星期日

開始ubuntu吧

最近因為買了新的筆電,再加上專題的需要

因此將多出來的桌機拿來灌Linux

雖然之前有曾經玩過Fedora

但後來因為Fedora5桌面服務太難上手因此作罷

所以這次我選了一個好上手的版本,那就是大名鼎鼎的ubuntu啦!! :)

再經過一陣漫長安裝後,進到桌面才發現原來Linux進步的腳步那麼的快

完完全全能感受到ubuntu團隊的努力

ubuntu的穩定性讓我覺得可以徹底拋棄XP擁抱Linux了 XD !!

一套幾乎不會中毒,要什麼軟體只要到

       應用程式—>添加/刪除

就幾乎垂手可得,非常方便。

所以特地開了這個BLOG分享ubuntu的使用心得

我想這也符合Linux的分享精神吧!!:-)