內(nèi)核中驅(qū)動(dòng)我想硬件商會(huì)提供一個(gè)實(shí)現(xiàn)了基礎(chǔ)功能的代碼包(純 C),你可能需要做些移植或 debug 工作。但像 HTC 的連拍功能,很可能是 HTC 開發(fā)人員自己實(shí)現(xiàn)的,而不是高通(至今未在高通內(nèi)核源 Codeaurora 中見到過連拍補(bǔ)丁的提交)。相機(jī)資源在 Android 內(nèi)核中是在主板驅(qū)動(dòng)(board-xxx.c)中定義的,比如一些屬性,io 地址,內(nèi)存映射段(這是內(nèi)核預(yù)分配的一段連續(xù)地址,為了提高載入速度,比如高通的 PMEM_ADSP),指定驅(qū)動(dòng)模塊名等。這些定義會(huì)在相機(jī)驅(qū)動(dòng)加載時(shí)用到。因?yàn)槟惚容^熟悉 C 語言,如果有 Linux 內(nèi)核調(diào)試經(jīng)驗(yàn)的話,相信理解這部分內(nèi)容并不太困難。
而 HAL 驅(qū)動(dòng)庫通常也都有藍(lán)本可參考,需要實(shí)現(xiàn)的接口與細(xì)節(jié)在 Google Android 開發(fā)者文檔中都有說明呢,基本上是將 frameworks 中關(guān)于相機(jī)頭文件中定義的函數(shù)一一實(shí)現(xiàn);這部分一般是 C++ 完成的。HAL 與內(nèi)核相機(jī)模塊通訊用得最多的是 ioctl 直接申請資源,所以你可能需要找份內(nèi)核驅(qū)動(dòng)開發(fā)文檔學(xué)習(xí)下如何添加自己的 ioctl 函數(shù)。關(guān)于相機(jī)啟動(dòng)時(shí) HAL 中函數(shù)的調(diào)用關(guān)系,網(wǎng)上可找到很多分析博文。
我所知道的大概就這些,細(xì)節(jié)沒法說也沒能力說清楚了。
java 并且必須掌握 JNI。
了解android應(yīng)用編程。
會(huì) C ++ ,看android 源碼中 就是在 c C++ Java 三種語言中穿梭。
知道 android 系統(tǒng)的啟動(dòng)流程。
會(huì)HAL(硬件抽象層)。
會(huì)Linux系統(tǒng)知識(shí),及Linux-kernel、Linux驅(qū)動(dòng)開發(fā)。因?yàn)镠AL還是調(diào)用Linux驅(qū)動(dòng)的。
android是在Linux-kernel上再建立了一個(gè)類似文件系統(tǒng)的系統(tǒng)。
1.鏡頭:
鏡頭類似于人眼,是決定拍照質(zhì)量的關(guān)鍵性因素。專業(yè)鏡頭對(duì)圖像的銳度控制是否合理、色彩還原是否真實(shí)、畸變是否嚴(yán)重等等因素起著至關(guān)重要的作用。
對(duì)于手機(jī)拍照用戶來說,對(duì)于鏡頭的選擇不像單反相機(jī)那樣可控可換,除了在購買手機(jī)前,稍作選擇外,對(duì)于正在使用的手機(jī),用戶在拍照時(shí)可以不用考慮這個(gè)因素是否可以向單反那樣更換,因?yàn)樵趺醋龆贾荒苁峭絼凇?/p>
2.傳感器種類、尺寸和像素高低:
相機(jī)傳感器分為CCD和CMOS兩大類。整體來說,CCD的成像質(zhì)量較好,當(dāng)然價(jià)格也比較貴;CMOS器件產(chǎn)生的圖像質(zhì)量相比CCD來說稍低一些,但其最大特點(diǎn)是非常省電,所以,在同時(shí)考慮價(jià)格的情況下,目前主流的手機(jī)都使用的是CMOS的傳感器。
傳感器尺寸和像素高低對(duì)照片質(zhì)量產(chǎn)生很大影響。數(shù)碼相機(jī)中,傳感器尺寸越大、像素越高,其中記錄的信息就越多,顆粒便越細(xì)膩,放大效果也越好;反之,傳感器尺寸越小、像素越低,記錄的信息也就越少,顆粒也越粗糙,放大效果也便越差。
對(duì)于手機(jī)的傳感器,在極其有限的空間中,沒有條件選擇太大尺寸的傳感器。對(duì)于像素這一很多用戶最看重的因素,其實(shí)并非是決定成像質(zhì)量的唯一因素,在同種、同尺寸傳感器的情況下,像素?cái)?shù)越高,手機(jī)的拍照質(zhì)量越好才更有說服力,單一的注重像素并不十分理性。當(dāng)然,對(duì)于這幾個(gè)因素,用戶也只能被動(dòng)的任從廠商安排,不能再拍照時(shí)為了拍的更好,對(duì)其進(jìn)行調(diào)節(jié)。
3.照片格式:
相比最常用的JPEG格式,RAW格式拍攝的照片可調(diào)節(jié)性更好,質(zhì)量也更高,不過缺點(diǎn)是RAW的照片更占空間。目前已經(jīng)有些手機(jī)支持RAW拍攝,不過,在空間不多的情況下,如果不是要求太高的話,還是選擇JPEG比較合適。
4.光線:
拍照看光線,簡單來說,在光線充足的情況下,手機(jī)拍出的照片質(zhì)量要比光線不足的情況下好很多,但這也不盡然,有時(shí)候在光線過強(qiáng)的情況下,有些手機(jī)會(huì)產(chǎn)生比較嚴(yán)重的偏色現(xiàn)象,所以也是視情況而定。
另外,光線的方向也對(duì)手機(jī)拍出的照片質(zhì)量有很大影響,在順光情況下,質(zhì)量要強(qiáng)于逆光拍攝的照片。所以,一般用戶拍照前最好要先確認(rèn)一下光線的方向,盡量在順光的情況下拍攝照片。對(duì)于這點(diǎn)是很多用戶用手機(jī)實(shí)際拍照時(shí)很容易忽略的。
拍照前后有那些技巧?
對(duì)于手機(jī)本身的硬件方面,手機(jī)用戶不能隨意做出更改決定,所以在拍照時(shí)可以不用考慮。但是對(duì)于其他方面,想要用手機(jī)拍出非常滿意的照片,用戶還是有很大的發(fā)揮空間的。手機(jī)拍照也需要技巧:
1.拍攝前:
光線是成像好壞的重要因素,手機(jī)攝像頭和照相機(jī)一樣,對(duì)光線的要求也很高,因此為了拍攝一張好的作品一定要選擇良好的光線條件,盡量避免在逆光的情況下拍攝,除了通過外部條件來滿足光源外,有的手機(jī)還可以通過手機(jī)內(nèi)置的輔助功能來對(duì)調(diào)節(jié):
a.調(diào)節(jié)亮度(或曝光度)。手機(jī)不能靠調(diào)節(jié)光圈快門來對(duì)拍后的圖片亮度進(jìn)行預(yù)設(shè),但是目前很多手機(jī)都可以調(diào)節(jié)亮度(或曝光度),在光線稍暗的情況下可以選擇此項(xiàng)。
b.開啟閃光燈。對(duì)于配備LED閃光燈的手機(jī),在暗光條件下,打開閃光燈能夠起到不錯(cuò)的補(bǔ)光作用,但是其有效范圍較短,更適合近距離使用。
c.開啟夜間模式。大多數(shù)手機(jī)用戶都知道在晚上拍照時(shí)打開夜間模式會(huì)比較合適,另外,在白天的光線不足時(shí),開啟夜間模式也能對(duì)提高亮度起到不錯(cuò)的效果。不過這里需要注意的是,其取景時(shí)間稍長,所以為了避免重影,盡量拿穩(wěn)手機(jī)。
d.調(diào)節(jié)感光度。有些時(shí)候,光線弱到一定程度,而又禁止使用閃光燈,比如在展覽館中,這個(gè)時(shí)候,如果手機(jī)中有設(shè)置ISO感光度的選項(xiàng)(一般分為高、中、低3項(xiàng)),可以將其調(diào)高,能夠在一定程度上提高亮度。不過在光線充足的情況下最好將其設(shè)置低一些,以免對(duì)照片質(zhì)量造成過多影響。
2.拍照時(shí):
無論是拍人還是拍景,選擇合適的角度都會(huì)大大提升自己對(duì)照片的滿意度。比如很多女孩喜歡自拍,需要提醒的是,自拍時(shí)要盡量將手機(jī)離自己遠(yuǎn)一些,以免由于手機(jī)的廣角造成人會(huì)“發(fā)胖”,網(wǎng)上有很多拿手機(jī)拍攝鏡子中的自己的全身還是比較明智的;另外,如果是拍攝上半身以頭部為主的話,最好是將手機(jī)鏡頭放在與視線平行稍靠上的位置,這樣一來可以顯得眼睛稍大,而來可以神奇“瘦臉”。
構(gòu)圖。
由于手機(jī)屬于定焦廣角鏡頭,其拍攝有特殊性。基本的構(gòu)圖與一般相機(jī)是一樣的,一般需要把事物放在黃金分割線(6:4)的位置。
但是由于其是廣角的鏡頭,拍攝景物有其優(yōu)勢,其取景范圍比較大。但是拍攝近景,尤其是花草和人物的時(shí)候,其鏡頭會(huì)變形,使事物扭曲。
因此,在拍攝人物的時(shí)候,需要離開一定的距離,必要時(shí)可以使用數(shù)碼變焦。光影。
由于手機(jī)的感光元件、鏡頭、閃光燈和快門的原因,其色彩還原度在不同情況下不一樣。手機(jī)在拍攝外景 光線比較充足的時(shí)候效果不錯(cuò),好的手機(jī)可以接近一般的數(shù)碼相機(jī)的水平。
當(dāng)然受限于鏡頭,其細(xì)節(jié)還是要略輸一籌。在拍攝室內(nèi)的時(shí)候,由于感光元件小,光線不足,其圖像一般會(huì)比較灰暗,還原度較差。
其快門為自動(dòng)調(diào)節(jié),因此不能進(jìn)行長時(shí)間曝光。解決的方法是采用閃光燈。
但是手機(jī)閃光燈還是比較弱,其有效范圍也就2-3米。因此在進(jìn)行室內(nèi)活動(dòng)拍攝的時(shí)候(酒吧表演等)表現(xiàn)力不佳。
同樣由于快門不能被設(shè)定,手機(jī)對(duì)運(yùn)動(dòng)物體很難捕捉。妥協(xié)的方法是鏡頭追著事物,使其在取景框中相對(duì)靜止。
輔助軟件(apps)。一般手機(jī)會(huì)自帶一改善照片的功能。
以iphone為例,可以進(jìn)行自動(dòng)改善照片、裁切、去除紅眼和HDR(把三張不同曝光度的照片疊在一起,使亮處和暗處的細(xì)節(jié)都可以展現(xiàn)出來)的功能。手機(jī)的輔助軟件則五花八門。
具體可以分為以下幾類:1.相框類:MashiMaro Photos (iphone),Frames & FX for Photos (iphone)。2.LOMO效果:模仿LOMO相機(jī)的漏光多鏡頭等效果 Leme Camera (iphone); VIDA (android)3.漫畫效果: Paper Camera (android & iphone)4.拼貼畫效果: ToonPaint (android & iphone)5.全景拍攝:可以在攝像模式掃一圈景物,然后軟件自動(dòng)拼接成全景圖片(最多可以接近360度)例如:Video2Pano (android & iphone)自拍。
自拍是手機(jī)最大的一個(gè)類別。因此在這里重點(diǎn)闡述一下。
很多人喜歡采用斜45度自上而下的拍攝方式,優(yōu)點(diǎn)是:1.燈光也是自上而下,重點(diǎn)突出臉部。2.與平著拍相比,斜45度可以很容易涵蓋全身或者半身,而不需要把手機(jī)離自己很遠(yuǎn)。
3.可以顯得下巴輪廓較小,有錐子臉的感覺。也有人喜歡在浴室對(duì)著鏡子平著自拍。
好處是:1.可以方便取景。2.有私房照的曖昧感覺。
壞處是:浴室需要收拾干凈。5手機(jī)拍攝附件。
在手機(jī)外接一個(gè)鏡頭或者腳架,增強(qiáng)其功能。Kogeto Dot for iphone 全景攝像功能,可通過軟件還原出全景的視頻。
80刀OlloClip換超廣角或魚眼或微距鏡頭for iphone6X光學(xué)鏡頭。這種鏡頭國內(nèi)有很多便宜的選擇。
并有適合多種手機(jī)的適配器。
在你打開camera的時(shí)候,你會(huì)傳入一個(gè)cameraId:
public static Camera open (int cameraId)
當(dāng)你設(shè)置了cameraId,打開camera之后,可以通過下面的代碼獲取camera信息:
android.hardware.Camera.CameraInfo info =
new android.hardware.Camera.CameraInfo();
android.hardware.Camera.getCameraInfo(cameraId, info);
if (info.facing == CameraInfo.CAMERA_FACING_FRONT) {
//前置攝像頭
} else { // 后置攝像頭
}
聲明:本網(wǎng)站尊重并保護(hù)知識(shí)產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請?jiān)谝粋€(gè)月內(nèi)通知我們,我們會(huì)及時(shí)刪除。
蜀ICP備2020033479號(hào)-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時(shí)間:3.290秒