原创 android-camera2相機開發【4】-選取最優預覽輸出尺寸

1. 拍照模式下的最優輸出預覽尺寸選擇 一般來說拍照的時候儘量選擇最大的輸出尺寸,以達到最好的預覽效果(和拍出的照片效果一樣)。 2. 視頻模式下的最優輸出預覽尺寸選擇 相機輸出尺寸默認是橫向的(寬>高),手機窗口一般是豎向的(不考慮旋轉

原创 anroid-camera2相機開發【1】-相機預覽

1. 配置權限 AndroidManifext.xml文件:<uses-permission android:name="android.permission.CAMERA" /> android6.0以後的動態權限:網上很多教程,這裏

原创 opencv在android平臺下的開發【4】-圖像濾波詳解

前言 在上一篇opencv-android-圖像平滑處理文章中,簡單介紹了幾種圖像平滑,也就是圖像模糊的方法,使用了幾個簡單的濾波器,這都屬於圖像的濾波操作。 opencv針對圖像的處理提供了imgproc模塊,比如圖像濾波、幾何變換,特徵

原创 flutter【11】組件--container

作用 container能夠方便地對組件進行繪製、定位和設定尺寸大小。 構造過程 使用 padding 包圍child 應用附加約束,如寬高 添加 margin 繪製過程 應用變換(transform) 添加裝飾(decoration

原创 opencv-android-圖像平滑處理

基本概念 圖像的平滑也就是圖像的模糊處理,簡單但是使用頻率很高,在執行許多高級處理之前都需要先進性圖像的平滑處理,以提高圖像處理算法效果。 平滑處理中需要使用濾波器,常用的是線性濾波器,作用是將輸入像素值的加權和作爲結果輸出給錨點像素。 g

原创 opencv-android-圖像容器 Mat

圖像在計算機中就是一堆點的數值,按順序存儲構成矩陣,opencv提供了一個 Mat 類來管理圖像矩陣。 Mat類由兩部分組成: 矩陣頭:包含矩陣尺寸,存儲方法,存儲地址等信息。 圖像矩陣指針:指向存儲所有像素值的矩陣的指針。 爲什麼不直

原创 flutter【10】dart語言--異步支持

異步支持 dart 中包含很多返回 Future 和 Stream 對象的方法,這些方法都是一步的,比如 I/O。 async 和 await 關鍵字支持異步編程。 處理 Futures 使用 async 和 await 使用 Futur

原创 flutter【9】dart語言--庫和可見性

庫和可見性 每個 Dart app 都是一個庫, 即使沒有使用 library 命令也是一個庫。 使用 import 和 library 指令可以創建模塊化的可分享的代碼。 庫不僅僅提供 API, 還是一個私有單元:以下劃線 (_) 開頭

原创 flutter【8】dart語言--泛型

泛型 例如基礎數組類型,List<E>, 其中的E就是泛型,參數化類型,也可以用其他單個大寫字母表示,如 E,T,S,K,V等。 使用泛型可以方便檢查工具對代碼進行審查 var names = List<String>(); names.a

原创 flutter【11】dart語言--生成器、可調用類、isolates、typedefs、元數據註解、註釋

生成器 如果想延遲生成數值序列,可以使用生成器。 同步生成器 Synchronous,返回一個 Iterable 對象。 異步生成器 Asynchronous,返回一個 Stream 對象。 實現同步生成器,需要使用 sync* 修飾方

原创 flutter【6】dart語言--異常

異常 和java不同,dart中的異常都是非檢查異常,方法可以不聲明可能拋出的異常,也不要求捕獲任何異常。 dart 提供了 Exception 和 Error 類型以及一些子類型來定義異常。不過,還可以自定義異常,只要拋出非空對象作爲異

原创 flutter【7】dart語言--類

類 dart 是純面嚮對象語言,每個對象都是某個類的實例,並且所有類都是繼承自 Object。 dart中繼承使用的是 mixin-based 繼承機制,詳細理解可以參考Flutter基礎:理解Dart的Mixin繼承機制 訪問類的成員 使

原创 flutter【5】dart語言--流程控制語句

if-else 條件必須是布爾型的值。 if (isRaining()) { you.bringRainCoat(); } else if (isSnowing()) { you.wearJacket(); } else { c

原创 flutter【3】dart語言--方法

方法 dart時純面嚮對象語言,所以方法也是一種對象,Function。所以方法也能被賦值給變量,當成參數傳遞給其他方法,也可以將一個類實例當成方法來調用。具體參考Callable calsses 方法實現實例 //返回值類型可省略,但是推

原创 flutter【2】dart語言--內置數據類型

內置類型 數值型 字符串 布爾型 列表/數組 Map runes(表示字符串中的 unicode 字符) symbols 上述類型的變量多可以用字面量進行初始化,例如 'this is a string' 是一個字符串字面量,true