發表文章

8-Bit Plane Slicing 位元平面分割 詳細解說 # 附 Python 程式碼

圖片
[影像處理 Image Processing] 8-Bit Plane Slicing 位元平面分割 詳細解說 # 附 Python 程式碼 觀念解說︰ 8-bit plane slicing 主要作用於進行影像處理時,在影像中 切割出高頻與低頻的資訊 。 8-bit plane slicing 分割抽像圖 如上圖所示,你可以想像,在一張灰階(8-bits)圖片的每一個像素pixel將被分層切割(0-7層), 總共8層 ,像漢堡一樣,這就是 8-bit plane slicing 。 在一張 灰階圖片 ,其像素值範圍是 0 - 255 ,分別用於表達不同的深淺灰度,而圖片中每一個像素點(pixel),都會有一個像素值(pixel value)。這一章將會以灰階圖片作為示例。 像素點、像素值的解釋,可以參考這篇文章。 其實圖片在數值處理上,就像一張 網格 , 網格裡每一個格子都有不同的數值,代表著不同的顏色 。(RGB色彩圖示則用了三層的網格去表示,每一格由 RED, GREEN, BLUE 三種顏色組成) 計算方法︰ 8-bit plane slicing 其實就是將每一個像素值(pixel value)的二進制值,以其每個位數 (2 0 - 2 7 ) 進行過濾。 假設以下表格是一張 灰階圖片 的像素值(數值範圍0-255)︰ 217 97 85 21 219 115 177 204 104 e.g. 網格裡每一個格子都有不同的數值,代表著不同的顏色。(如上所示) ( 0 - 255) 1. 首先我們可以將灰階圖片裡的所有像素值 (範圍︰0 - 255) 轉為2進制表達。 十進制 二進制 0 0000 0000 1 0000 0001 2 0000 0010 3 0000 0011 ...... ...... 127 0111 1111 ...... ...... 255 1111 1111 2. 然後我們將圖片裡的每一格像素(pixel),抽取其二進制值每個位數的值,成為Bit-plane。我將會以下方像素值為例︰ 217 97 85 21 219 115 177 204 104 像素值(十進制表示) ...

Java SE/ Java EE/ Java ME 的分別

Java Java雖然是程式語言(Programming language),其實也同時是平台(platform)技術。 程式語言(Programming language)由運用特定形式的語言和字符幫助我們建立程式的處理邏輯,而平台(platform)提供了程式編譯(complie)及運行(execute)的環境(environment)。 Platform Java語言的平台(platform)環境主要是由JVM(Java Virtual Machine)負責編譯程式碼轉為機器碼 、 API(Application Programming Interface)提供函式庫 及其他基本元件 組成的。 而Java官方總共有提供3種主要體系的Platform︰ Java Platform Standard Edition(Java SE) Java Platform Enterprise Edition(Java EE) Java Platform Micro Edition(Java ME) 以上3種Patform都會提供該Platform版本的JVM及API給使用者使用。 Java SE︰提供基本的核心的功能。包含了基本類型的Classes和一些開發應用程序用到的Classes (e.g. networking, security, graphical user interface etc.) Java EE︰EE是建立在SE之上,它是企業版,其主要目的是為在企業中運行的大規模應用程序提供解決方案。 Java ME︰是Java SE的subset,以及包含特定種類的Class libraries,這些Classes通常用於開發行動裝置應用程式。

Python免費學習網站介紹-Snakify

圖片
[程式語言]Python免費學習網站介紹-Snakify 今天想給大家介紹一個不錯的程式語言教學網站 Snakify , 這是一個 Python、HTML5、JavaScript、Jquery 教學網站。可以直接在網站進行即時的程式練習,並且自動批改。

[實用工具]分租式單位電費單計算機

分租租戶電費單計算機 *所有欄位必填* 應繳總金額︰ 總用電度(計費度數)︰ 分租單位數(房間數)︰

[CSS] RWD Website Media-Query-Template

Media Query範本方便設計RWD網頁。 @media (min-width: 1281px) { /*CSS For this device*/ } @media (min-width: 1025px) and (max-width: 1280px) { /*CSS For this device*/ } @media (min-width: 768px) and (max-width: 1024px) { /*CSS For this device*/ } @media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) { /*CSS For this device*/ } @media (min-width: 481px) and (max-width: 767px) { /*CSS For this device*/ } @media (min-width: 320px) and (max-width: 480px) { /*CSS For this device*/ }

[CSS]Box-Sizing

暸解CSS屬性[box-sizing] 我們經常在網路上看別人寫css時,會先設定 *{ margin:0; padding:0; box-sizing:border-box; } 為什麼要將box-sizing的value設定成 border-box 呢?這是為了方便設計師計算網頁頁面元素的長寬。

[Blogger]如何編輯Blogger Template

從頭開始教你如何編輯Blogger的Template 你有沒有想過,設計屬於自己的Blogger版面配置? Blogger所提供的主題(Theme),並不能自由地控制各項版面配置,大量繁雜的程式碼更令初學者看得頭痛。 這裡將會教你如何從頭開始編寫Blogger Template的HTML CODE。