1. 怎樣才能使用手機的攝像頭
以手機為例,攝像頭打不開的原因及解決方法有:
1.將相機模式切換到自動模式後再切換前置攝像頭嘗試。
2.是否有其他應用程序在使用前置攝像頭。
3.打開相機和設置,然後再重置。
4.卸載手機中第三方照相軟體嘗試,排除軟體兼容性問題。
5.若無效,備份機器中數據(聯系人.簡訊.照片等),恢復出廠設置嘗試。
攝像頭(CAMERA或WEBCAM)是一種視頻輸入設備,屬閉路電視的一種,被廣泛的運用於視頻會議,遠程醫療及實時監控等方面。攝像頭一般具有視頻攝影.傳播和靜態圖像捕捉等基本功能,是藉由鏡頭採集圖像後,由攝像頭內的感光組件電路及控制組件對圖像進行處理並轉換成計算機所能識別的數字信號,然後藉由並行埠.USB連接,輸入到計算機後由軟體再進行圖像還原,從而形成畫面。
攝像頭可分為數字攝像頭和模擬攝像頭兩大類。數字攝像頭可以將視頻採集設備產生的模擬視頻信號轉換成數字信號,進而將其儲存在計算機里。模擬攝像頭捕捉到的視頻信號必須經過特定的視頻捕捉卡將模擬信號轉換成數字模式,並加以壓縮後才可以轉換到計算機上運用。
2. 電腦怎麼用手機攝像頭
遠程相機,可以幫您實現無需觸碰手機就可以通過電腦直接遠程式控制制您手機的攝像頭進行攝影,或者實時查看設備周圍畫面。
1.在手機上下載安裝AirDroid,並登錄AirDroid個人版賬號
2.在電腦上下載安裝AirDroid電腦端,並登錄同一個賬號
3.打開AirDroid電腦端,點擊左側菜單欄的第三個遠程式控制制圖標
4.選擇對應設備,點擊遠程相機按鈕建立連接。下載 AirDroid 使用
3. 華為手機攝像頭如何打開
華為手機攝像頭許可權設置如下:
第一步、在手機桌面,點擊進入「設置」。
第二步、「設置」界面中,我們找到「許可權管理」。
第三步、進入「許可權管理」後,選擇「應用程序」。
第四步、「應用程序」中,找到「微信」點擊進入。
第五步、「微信」許可權界面,把「調用攝像頭」從「禁止」修改為「允許」即可。
4. android中用Camera來調用攝像頭,只能用takePicture來拍照嗎
代碼與範例:
首先需要在Manifest文件中添加以下內容:
以使程序獲取攝像頭使用以及自動對焦功能的使用許可權。
CameraTestActivity.java
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
public class CameraTestActivity extends Activity {
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
requestWindowFeature(Window.FEATURE_NO_TITLE); 設置橫屏模式以及全屏模式
setContentView(new CameraView(this)); 設置View
}
}
CameraView.java
import java.io.FileOutputStream;
import android.content.Context;
import android.hardware.Camera;
import android.os.Environment;
import android.view.MotionEvent;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
public class CameraView extends SurfaceView implements SurfaceHolder.Callback, Camera.PictureCallback {
private SurfaceHolder holder;
private Camera camera;
private boolean af;
public CameraView(Context context) {構造函數
super(context);
holder = getHolder();生成Surface Holder
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);指定Push Buffer
}
public void surfaceCreated(SurfaceHolder holder) {Surface生成事件的處理
try {
camera = Camera.open();攝像頭的初始化
camera.setPreviewDisplay(holder);
} catch (Exception e) {
}
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {Surface改變事件的處理
Camera.Parameters parameters = camera.getParameters();
parameters.setPreviewSize(width, height);
camera.setParameters(parameters);設置參數
camera.startPreview();開始預覽
}
public void surfaceDestroyed(SurfaceHolder holder) {Surface銷毀時的處理
camera.setPreviewCallback(null);
camera.sPreview();
camera.release();
camera =null;
}
@Override
public boolean onTouchEvent(MotionEvent event) {屏幕觸摸事件
if (event.getAction() == MotionEvent.ACTION_DOWN) {按下時自動對焦
camera.autoFocus(null);
af =true;
}
if (event.getAction() == MotionEvent.ACTION_UP && af ==true) {放開後拍照
camera.takePicture(null, null, this);
af =false;
}
returntrue;
}
public void onPictureTaken(byte[] data, Camera camera) {拍攝完成後保存照片
try {
String path = Environment.getExternalStorageDirectory() +"/test.jpg";
data2file(data, path);
} catch (Exception e) {
}
camera.startPreview();
}
private void data2file(byte[] w, String fileName) throws Exception {將二進制數據轉換為文件的函數
FileOutputStream out =null;
try {
out =new FileOutputStream(fileName);
out.write(w);
out.close();
} catch (Exception e) {
if (out !=null)
out.close();
throw e;
}
}
}
在Android開發過程中,有時需要調用手機自身設備的功能,本文側重攝像頭拍照功能的調用。
:blog.csdn./mahoking/article/details/28225907
我們要調用攝像頭的拍照功能,顯然
第一步必須加入調用攝像頭硬體的許可權,拍完照後我們要將圖片保存在SD卡中,必須加入SD卡讀寫許可權,所以第一步,我們應該在Android清單文件中加入以下代碼
<uses-permission android:name="android.permission.CAMERA"/>攝像頭許可權
SD卡讀寫許可權
<uses-permissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
第二步,要將攝像頭捕獲的圖像實時地顯示在手機上。
我們是用SurfaceView這個視圖組件來實現的,因此在main.xml中加入下列代碼
<SurfaceView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/surfaceview"
/>
第三步,設置窗口的顯示方式
首先獲得當前窗口Windowwindow = getWindow();得到窗口
接著設置沒有標題requestWindowFeature(Window.FEATURE_NO_TITLE);沒有標題
接著設置全屏 window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);設置全屏
當然,我們在拍照過程中,屏幕必須一致處於高亮狀態,因此接著加入下面代碼
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);設置高亮
至此,我們將窗口的顯示方式規定死了,然後才能設置窗口上顯示的組件(順序非常重要)
setContentView(R.layout.main);
第四步,設置SurficeView顯示控制項的屬性
找到surficeView
surfaceView = (SurfaceView)findViewById(R.id.surfaceview);
設置它的像素為800x600
surfaceView.getHolder().setFixedSize(800,480);
下面設置surfaceView不維護自己的緩沖區,而是等待屏幕的渲染引擎將內容推送到用戶面前
surfaceView.getHolder().setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
第五步,就是為surficeView加入回調方法(callBack)
surfaceView.getHolder().addCallback(newSurfaceCallback());
上面的回調類是我們自己定義的,代碼如下
private class SurfaceCallback implementsSurfaceHolder.Callback{
@Override
public void surfaceCreated(SurfaceHolderholder) {
try {
camera = Camera.open();打開硬體攝像頭,這里導包得時候一定要注意是android.hardware.Camera
WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE);得到窗口管理器
Display display = wm.getDefaultDisplay();得到當前屏幕
Camera.Parameters parameters =camera.getParameters();得到攝像頭的參數
parameters.setPreviewSize(display.getWidth(),display.getHeight());設置預覽照片的大小
parameters.setPreviewFrameRate(3);設置每秒3幀
parameters.setPictureFormat(PixelFormat.JPEG);設置照片的格式
parameters.setJpegQuality(85);設置照片的質量
parameters.setPictureSize(display.getHeight(),display.getWidth());設置照片的大小,默認是和屏幕一樣大
camera.setParameters(parameters);
camera.setPreviewDisplay(surfaceView.getHolder());通過SurfaceView顯示取景畫面
camera.startPreview();開始預覽
isPreview = true;設置是否預覽參數為真
} catch (IOException e) {
Log.e(TAG, e.toString());
}
}
@Override
public void surfaceChanged(SurfaceHolderholder, int format, int width,
int height) {
TODO Auto-generated method stub
}
@Override
public void surfaceDestroyed(SurfaceHolderholder) {
if(camera!=null){
if(isPreview){如果正在預覽
camera.sPreview();
camera.release();
}
}
}
}
第六步,我們必須對按鍵事件進行監聽,如是拍照還是聚焦,代碼如下
public boolean onKeyDown(int keyCode,KeyEvent event) {處理按鍵事件
if(camera!=null&&event.getRepeatCount()==0)代表只按了一下
{
switch(keyCode){
case KeyEvent.KEYCODE_BACK:如果是搜索鍵
camera.autoFocus(null);自動對焦
break;
case KeyEvent.KEYCODE_DPAD_CENTER:如果是中間鍵
camera.takePicture(null, null, new TakePictureCallback());將拍到的照片給第三個對象中,這里的TakePictureCallback()是自己定義的,在下面的代碼中
break;
}
}
return true;阻止事件往下傳遞,否則按搜索鍵會變成系統默認的
}
------------------------------------------------------------------------------------------
private final class TakePictureCallbackimplements PictureCallback{
public void onPictureTaken(byte[] data,Camera camera) {
try {
Bitmap bitmap =BitmapFactory.decodeByteArray(data, 0, data.length);
File file = newFile(Environment.getExternalStorageDirectory(),System.currentTimeMillis()+".jpg");
FileOutputStream outputStream = newFileOutputStream(file);
bitmap.press(CompressFormat.JPEG, 100,outputStream);
outputStream.close();
camera.sPreview();
camera.startPreview();處理完數據之後可以預覽
} catch (Exception e) {
Log.e(TAG, e.toString());
}
}
}
注意,代碼中有兩個回調類,一個是SurfaceCallback(),另外一個是TakePictureCallback(),初學者可能一時難以理解,通俗地講,前者是用來監視surficeView這個暫時存放圖片數據的顯示控制項的,根據它的顯示情況調用不同的方法,包括surfaceCreated(),surfaceChanged(),surfaceDestroyed(),也就不難理解為什麼會有這三個回調方法了(注意,在surfaceDestroyed()方法中必須釋放攝像頭,詳細代碼參見上方)。TakePictureCallback()是為了監視是否拍照而設計的介面,期中也僅有一個方法,camera將拍照得到的數據傳入方法,我們便可以對拍照得到的數據進行進一步處理
您好!
不能使用主攝像頭提示什麼呢,請你具體描述一下,以便我們更好的為您解答。
如果有任何問題可以隨時來咨詢我們的。非常感謝您對我們vivo的支持,祝您生活愉快!
有的不帶盤的攝像頭是免驅的,只要XP_SP2就會自認,另外你可以搜搜PC-CAMERA的萬能驅動,不行的話還是老實點用盤裝
刷機包有問題,你先下載個別的相機看看能不能切換攝像頭,或是有沒有相關的相機補丁,不行的話你再刷回來就好了。
尊貴的用戶,您好:
很抱歉給您帶來疑惑了。若您需要切換前後置攝像頭,可進入主菜單--相機--點擊「+」後面的小相機圖標即可切換,請您嘗試。
若如果您嘗試,沒有該切換圖標,建議到系統設置--應用程序--拍照--清除數據後試試,同時您也可以下載第三方拍照軟體進行嘗試,若使用第三方軟體也會出現該情況,建議您備份下資料,恢復出廠設置後進行嘗試,若依然不行,可抽空帶上保修卡或發票聯系當地的維修站點檢測處理。
官網授權維修站點查詢::support1.lenovo../lenovo/wsi/station/servicestation。
感謝您對聯想的支持,祝您生活愉快!
這個問題和java語言本身沒啥關系。首先看你是用什麼讀取的攝像頭來獲得照片。
比如說你用flash來讀取攝像頭獲得照片,那麼有相關的api獲得攝像頭列表(此時的攝像頭列表是全部的,包括虛擬攝像頭的)
但是,你可以讀取本地真實的攝像頭(bs模式請用ocs控制項讀取,讀取方式參照System.ManagementObject),然後比較真實的攝像頭和現在正在拍照使用的攝像頭即可。
真實實踐過 望採納。
打開「我的電腦」
下面應該有個「掃描儀和照相機」
打開你的照相機就可以拍照了
你可以把手機重啟一下試試。
或者你可以從應用寶裡面下載個第三方拍照軟體。然後拍照看看怎麼樣。
或者你恢復出廠設置。應該會好很多的。也有可能是你攝像損毀了。
5. Python簡直無所不能!在電腦上如何調用手機攝像頭教你輕松搞定
看到標題,卧槽!Python好牛批~
實際上它真的也牛批!
兄弟們用的台式電腦現在很少裝攝像頭的吧,筆記本就不要說話了!
雖然電腦沒有攝像頭,不過萬一要是想跟女朋友電腦來個視頻啥的,但是咱們不是還有手機嗎 ,哈哈~
我們要做一件事,首先要知道目標是啥吧,那我們要幹啥,在電腦上使用手機攝像頭~
小明:那麼問題來了,要怎麼調用手機攝像頭嘞?
經過我不斷的嘗試,最後讓我找到一個非常厲害的軟體,在區域網中可以自由調用手機攝像頭捕捉到的信息,哎,這不就解決了~
小明:那怎麼把捕捉到的鏡頭,實時的顯示出來嘞?
這個都是小問題,Python那麼多庫,分分鍾就能找到合適的,使用這個庫,我們就可以讓我們的圖像顯示出來了。
我們來實際操作一下
將攝像頭apk安裝在手機上並開始使用,驗證一下顯示情況.
1、將手機和電腦連接在同一個wifi下面。
2、啟動app,可以看見app中有一個鏈接地址。
3、將這個區域網鏈接地址寫入瀏覽器的地址中,然後運行起來。
賬號:admin
密碼:admin
然後就可以看見如下畫面:
這其實是一段視頻,看見這個的話,那就說明你成功了一半。
如何來處理這段視頻呢?這時候就到我們編碼了。
先安裝一下要用的模塊,對沒錯,就是這個神器~
pip install opencv-python
先到圖一下庫,你的窗口名字命名一下,@後面換成之前獲取到的app區域網地址,最後面引入視頻地址,video其實也可以換成你電腦中的視頻地址可以製作成一個播放器。
這樣就將視頻引入進來了,你可以換一個視頻地址,把它變成視頻播放器,然後就需要去讀取引入的視頻地址。
既然實時的,而且要長時間運行,那當然少不了while true。
然後終於可以正常運行了,但無法退出,絕望~
雖然這是一個bug,但是在不同場景中他就不是bug,就比如你如果將這個軟體發送給你的鐵汁,讓他一找不到關閉窗口的辦法,只能重啟電腦,讓你高興一陣,那這個就不是bug。不過他會把你怎麼樣我就不不知道了。
那怎麼解決退出的問題,那不簡單,給它加一個判斷~
然後就退出了,雖然退出了,但是需要做後續處理。
然後電腦調用攝像頭就圓滿搞定!