「人工智慧」是一個很熱門的話題,不過就技術而言它已經存在已久。
最近,我非常專注地閱讀了百度的 Paddle 飛槳網站 https://www.paddlepaddle.org.cn/ 有關人工智慧技術的內容,我覺得它非常清楚地解釋了人工智慧、機器學習和深度學習之間的關係。因此,我特別把這些內容整理起來。從下圖一來解釋這三者的關係,人工智慧 AI 可以被視為應用於各個領域的一種技術,其需要依賴於機器學習 (ML:Machine Learning) 的方法。機器學習技術可以分為兩種主要形式,即早期的傳統學習技術和現代的深度學習技術 (DL:Deep Learning)。
在早期的機器學習中,由於硬體運算效能有限且訊息數據難以大量取得,技術的發展側重於分析訊息的特徵。以我過去學習過的語音和影像技術為例,我們需要分析語音的發音方式,例如聲母、韻母、子音...等,並提取出聲音的特徵,還有從頻譜的角度來分析語音特性。之後,我們建立一個模型,例如隱藏式馬可夫鏈 (HMM),以便進行語音的訓練和識別。過去,同樣的過程也被運用在影像處理方面,先解析影像訊號,分析影像特性並取得其特徵,再建立影像的模型。從上述描述可以看出,傳統的技術需要對這多媒體訊號的特性進行深入研究,不論是從時域(time domain)或頻譜(frequency domain)的角度來解析訊號的特徵。接著,根據這些特徵建立一套模型,並將有限的數據輸入到模型中,最終進行模型的訓練以獲得適合的結果。這個過程需要對訊息進行大量的研究和分析,並且受限於資源和數據的可用性。
漢亞科技 Han-Ya 發表在 痞客邦 留言(1) 人氣()
GMap.NET 是一個功能強大的地圖繪製套件,用於 WinForm 應用程式並載入 Google 地圖。由於 Google 地圖本身提供 API 函數讓第三方使用,而 GMap.NET 套件將這些 Google 地圖的函數封裝起來,組成一個 .NET 環境下開發的函數庫,方便用 C# 語言開發地圖繪製與標示的功能。
首先,在 Visual Studio 上面開啟一個專案準備開發 GMap 地圖,接著從 NuGet 套件管理中搜尋 "GMap",安裝 GMap.NET.WinForms 等相關的軟體函數庫,如下圖一所示。
|
圖一:安裝 GMap.NET 套件 |
漢亞科技 Han-Ya 發表在 痞客邦 留言(0) 人氣()
|
圖一:錄製 IP CAM 的畫面 |
首先,VideoWriter 是一個 Emgu.CV 的類別,用來錄製影像檔,參考下圖二的說明。創建這個類別時,至少要提供的參數:錄製的檔名、FPS (Frame rate Per Second)、Frame尺寸大小、以及是否彩色錄影。
漢亞科技 Han-Ya 發表在 痞客邦 留言(0) 人氣()
Emgu CV 是一套處理影像的跨平台套件,它將 OpenCV 的影像處理函數庫透過 .Net 核心封裝成 Emgu CV。從 2008 年開始 Emgu 開發出 1.2 版本,2009 年推出 2.0,到了 2015 年進展到 3.0 版本,2019 年進到 4.0 版本,目前已經來到 4.7 的版本號了。最新的 Emgu 可以支援 Windows、Linux、iOS、安卓...等各種平台,並且提供 C#、C++、VB.NET 等語言的範例程式碼,開發編譯的環境則需要 Visual Studio 2017 以上的版本。
底下來實作一個 IP Cam 網路擷取影像的案例,實作過程前,先說說這套 Emgu 的缺點。我在開發的過程中發現版本間的程式碼無法相容,比如:開發用 3.1 版本,當升級到 4.2 版本後,很多函數的 interface 改了,有的類別名稱也改了,造成程式碼無法上下版本相容,這點是它的一大問題。
漢亞科技 Han-Ya 發表在 痞客邦 留言(0) 人氣()
最近拿到一塊 NXP LPC55S69 開發板,準備開發 USD + SD 存取,板子被包裝在下圖的盒子內,盒子封面印有這塊開發板的官方網路連結。根據技術文件的介紹,這套開發板大約是2020年上市了穩定版本,官方規畫這顆 MCU 主要應用於工業物聯網 IOT ﹑自動化﹑診斷設備...等領域。
|
圖一:LPC55S69 開發板的包裝盒 |
下圖二是開發板的正面原貌,板子中間是 MCU LPC55S69,晶片核心是ARM Cortex-M33,具有雙核心的封裝,內部最高時脈為 150MHz。基本上,晶片都包含了一般 MCU 該有的周邊,比較特別的部分有雙 USB 介面﹑雙 SD 介面﹑以及語音介面。在圖的右上方有語音的 codec 晶片,能將語音轉成數位化後接到 LPC55S69 處理。左邊有兩個 micro USB 接口,分別支援 Full speed 和 High speed 的規格,另外有兩個 micro USB 接口分別是供電和 debug 之用。 左下方的區塊是 Link2 on-board debugger,它支援除了 NXP 自家的 Link2 除錯器之外,也支援外接 J-Link 的除錯器。
漢亞科技 Han-Ya 發表在 痞客邦 留言(1) 人氣()