Steven5538

Steven5538

人生的一點記錄

Color transformation and processing

這次分成兩點:

  1. image to HIS color space
  2. Skin Detection
    image to HIS color space
    網路上似乎一般稱作 HLS,又做HSV,其分別代表:
    色相(H)是色彩的基本屬性,就是平常所說的顏色名稱,如紅色、黃色等。
    飽和度(S)是指色彩的純度,越高色彩越純,低則逐漸變灰,取0-100%的數值。
    明度(V),亮度(L),取0-100%。
    而通常影像的格式是 RGB,需要從 RGB 轉換至 HLS。


node.js request 與 Express callback 問題

近日想要製作 API,不過該 API 內容源自某個需要登入的網站,使用的語言是 node.js,而在 node.js 底下有個非常方便的 module - request,可以對需求網站做 get、post 等等多種需求。
一個基本的 post 配合 Express 可以如下呼叫:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
app.get '/' , (req , res) ->;
res.send login()

login = () ->;
options =
strictSSL: false ,
jar: true ,
form: formData ,
url: 'https://example.com'

request.post options , (err , res , body) ->;
if not err and res.statusCode is 200
# 1. do something with body ...

# 2. do something when post finish and callback the result
result

Discrete Fourier Transform and Frequency Filtering

Discrete Fourier Transform

簡稱為 DFT,是傅立葉變換在時域和頻域上都呈離散的形式,將信號的時域採樣變換為其DTFT的頻域採樣。在形式上,變換兩端(時域和頻域上)的序列是有限長的,而實際上這兩組序列都應當被認為是離散周期信號的主值序列。即使對有限長的離散信號作DFT,也應當將其看作其周期延拓的變換。在實際應用中通常採用快速傅立葉變換計算DFT。公式如下:


Histogram Equalization and Edge Detection

Histogram Equalization 

直方圖均化(Histogram Equalization),屬於影像增強的技術之一,在某些情況下我們可能會需要提高影像的品質,使影像的細節或特徵更加明顯,其中一種方法便是對影像亮度的分布進行改變,直方圖均化便是其中之一。
直方圖等化使用機率分佈,將原先的亮度分布重新均勻的等化到新的亮度值。可參考公式如下。


Image Scaling and Rotation

實現影像的縮放以及旋轉,主要使用到的演算法有下面三種:

  1. Nearest Neighbor Interpolation
  2. Bilinear Interpolation
  3. Bicubic Interpolation

Nearest Neighbor Interpolation

Nearest Neighbor Interpolation(以下簡稱NN),最簡單快速的縮放演算法,其概念如上圖所示,放大過後透過鄰近的一格來填補色塊,這種方法直覺快速,但很明顯的可以預想得到其所處理過的影像會產生鋸齒。

關於 jQuery ScrollPagination
這裡標題說的是一個jQuery的plugin - jQuery ScrollPagination其實也不確定是bug還是feature? :P總之這plugin的作法是當他偵測到ScrollBar接近底部位置的時候,會去做request..但由於其並沒有檢查request做完與否就繼續下一個步驟,所以會導致重複request Orz上網找了很久的解答,大致上是要自己加上lock的機制:1234567var loadContent = $.fn.scrollPagination.loadContent;$.fn.scrollPagination.loadContent = function...
豆瓣FM歌詞插件(For Chrome) - Douban Lyric Chrome Extension
前陣子期中考完稍微有幾天閒了下來,剛好好友 ken8203 一直說來寫個豆瓣FM的歌詞插件,於是趁著這幾天就把它寫完了。 插件下載 應該是不用寫什麼操作文件,安裝上去後打開 豆瓣FM 就會看到歌詞囉!第一次寫 Chrome Extension ,有任何意見歡迎指教!
<C/C++> 大數因式分解
一樣是學校的作業題目,整個花了很多時間..輸出則是輸出到文件output.txt。大數分解基本上最快應該是用質因數分解,不過本人實力有限,我一直想不出要怎麼把質因數乘成所有因數。原始碼有點複雜,先附上完整原始碼,然後再分開來解釋一下。 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394...
<C/C++> N階階乘運算 - 快速降階法
其實是學校作業之一 orz個人自認自己這個寫得還不錯,所以放出來給大家看看,呵呵。一般的降階法運算方式應該不用我多說吧:P?快速降階法大抵是長這樣 – 這個算法最大的問題就是第一個數字不能為0。下面就是C++的實作範例囉。獻醜了:P 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273#include <iostream>#include <ct...
avatar
steven5538
好像是後端工程師