1. 程式人生 > >linux opencv呼叫手機攝像頭

linux opencv呼叫手機攝像頭

手機端安裝IP攝像頭

先上原始碼:

#include "cv.h"
#include "highgui.h"
#include <iostream>


int main(int, char**) {
    cv::VideoCapture vcap;
     cv::Mat image;
CvCapture  *capture ;
    const std::string videoStreamAddress = "http://10.133.225.11:8080/video"; 
    

   
    if(!vcap.open(videoStreamAddress)) {
        std::cout << "Error opening video stream or file" << std::endl;
        return -1;
    }


    //Create output window for displaying frames. 
    //It's important to create this window outside of the `for` loop
    //Otherwise this window will be created automatically each time you call
    //`imshow(...)`, which is very inefficient. 
    cv::namedWindow("Output Window");




    for(;;) {
        if(!vcap.read(image)) {
            std::cout << "No frame" << std::endl;
            cv::waitKey();
        }
        cv::imshow("Output Window", image);


       if(cv::waitKey(1) >= 0) break;
  
    }   
}



編譯:g++ `pkg-config --cflags opencv` -o camera camera.cpp `pkg-config --libs opencv`

執行 即可

方法二:

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;

int main()
{
    VideoCapture cap;
    Mat img;
    while (true)
    {
        cap.open("http://10.133.225.11:8080/video");
        if (cap.isOpened())
        {
            cap.read(img);
            imshow("win", img);
            if ((uchar)waitKey(1) == 27)
                break;
        }
        else
            break;
    }
}


方法三:不用VIdeoCapture,用cvCapture

#include <stdio.h>
#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>    
#include <opencv2/highgui/highgui.hpp>    
#include <opencv2/imgproc/imgproc.hpp>  
using namespace cv;


int main()  
{  
     
    Mat img;  
    Mat mat(480, 640, CV_8UC4);  
    while (true)  
    {  
        CvCapture *camera=cvCaptureFromFile("http://10.133.225.11:8080/shot.jpg");
        IplImage *img=cvQueryFrame(camera);
      
            imshow("win", Mat(img));  
            if ((uchar)waitKey(1) == 27)  
                break;  
    }  
}  

關於使用yolo呼叫遠端攝像頭的方法:

在YOLO src資料夾下,編輯demo.c,

修改程式碼

cap=cvCaptureFromFile("http://10.133.225.11:8080/shot.jpg")

在fetch_in_treads函式也新增程式碼:

cap=cvCaptureFromFile("http://10.133.225.11:8080/shot.jpg")
即可實現YOLO遠端呼叫攝像頭。

相關推薦

linux opencv呼叫手機攝像頭

手機端安裝IP攝像頭 先上原始碼: #include "cv.h" #include "highgui.h" #include <iostream> int main(int, char**) { cv::VideoCapture vcap;

html5 file呼叫手機攝像頭

  在切圖網一個客戶的webapp專案中需要用到 html5呼叫手機攝像頭,找了很多資料,大都是 js呼叫api  然後怎樣怎樣,做了幾個demo測試發現根本不行, 後來恍然大悟,用html5自帶的 input file=""  ,純html5,並且不涉及到js ,

html5呼叫手機攝像頭

<input type="file" accept="image/*" capture="camera"><input type="file" accept="video/*" capture="camcorder"><input type="file" accept="audi

Html5呼叫手機攝像頭並實現人臉識別

需求 混合App開發,原生殼子+webApp,在web部分呼叫原生攝像頭功能並且在網頁指定區域顯示攝像頭內容,同時可以手動拍照並進行人臉識別,將識別結果顯示在網頁上。 技術棧 vue、Html5、video標籤、Android、IOS、百度AI 分析 1、使用navi

openCV 呼叫網路攝像頭或本地攝像頭

openCV 呼叫網路攝像頭 所需要硬體及軟體環境 python3.6,一個網路攝像頭,openCV, # -*- coding: utf-8 -*- # @author leone # @desc 使用 python 的 openCV 獲取網路攝像頭的資料 # @version 2018-12-2

openCV 呼叫網路攝像頭

所需要硬體及軟體環境 python3.6,一個網路攝像頭,openCV, # -*- coding: utf-8 -*- # @author leone # @desc 使用 python 的 openCV 獲取網路攝像頭的資料 # @version 2018-12-23

HTML5呼叫手機攝像頭拍照

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ http://blog.sina.com.cn/s/blog_4ad7c2540101lnak.html HTML5 The Media

H5呼叫手機攝像頭,圖片,視訊等

限制只能選擇圖片<input type="file" accept="image/*">限制只能選擇視訊<input type="file" accept="video/*">限

html5呼叫手機攝像頭,實現拍照上傳功能

http://www.glve.net/html5-calls-cell-phone-cameras-to-achieve-photo-upload-feature.html 今天做手機網站,想實現手機掃描二維碼功能。首先實現在瀏覽器中呼叫手機攝像頭,實現拍照功能並且把拍下的照片顯示在頁面並上傳到伺服器

使用HTML5+呼叫手機攝像頭和相簿

例項: 具體流程:點選觸發選擇拍照或相簿-->拍照或相簿選擇照片-->拿到圖片路徑進行壓縮-->讀取檔案並顯示在頁面上 首先是html程式碼,很簡單,就是給一個新增按鈕,點選觸發事件,這裡我就不把css檔案放出來,大家知道是一個新增按鈕就行。 &

微信瀏覽器呼叫手機攝像頭錄影

<input type="file" style="/* visibility: hidden */" capture="camera" accept="image/*,video/*" name

(親測可用)html5 file呼叫手機攝像頭

在切圖網一個客戶的webapp專案中需要用到 html5呼叫手機攝像頭,找了很多資料,大都是 js呼叫api  然後怎樣怎樣,做了幾個demo測試發現根本不行, 後來恍然大悟,用html5自帶的 input file=""  ,純html5,並且不涉及到js ,就可以實現。

OpenCV筆記二】OpenCV呼叫Mac攝像頭

#include <opencv2/highgui.hpp> #include <opencv2/opencv.hpp> #include <stdio.h> us

HTML5 呼叫手機攝像頭掃描二維碼

最近有個專案需要使用H5呼叫手機攝像頭掃描二維碼斌且識別。(很奇葩的需求) 百度了下找到了這個api: 舊版:(目前只有UC瀏覽器支援,其他的手機瀏覽器一律沒有反應) https://developer.mozilla.org/zh-CN/docs/Web/API/Navi

VMware虛擬機 + ubuntu16.04 Linux OpenCV打不開攝像頭解決辦法

ubun png 可選 ubuntu16 正常 linu 技術分享 alt gpo 通過如下步驟,已解決:(不知哪個步驟是關鍵,全寫下來) sudo apt-get update sudo apt-get upgrade 在Windows下先確認攝像頭能正常讀取。

利用python OpenCV呼叫攝像頭模組

import cv2 import numpy as np cap = cv2.VideoCapture(0) while(1): # get a frame ret, frame = cap.read() # show a frame cv2.imshow("ca

android開發 19 呼叫手機攝像頭錄影,並播放

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Opencv+Python3在WIN10環境下呼叫電腦攝像頭並儲存視訊

測試環境:win10 Python-3.7.1 opencv-3.4.2 話不多說,直接上程式碼: # 匯入opencv和numpy的庫檔案 import cv2 import numpy as np # VideoCapture()用來捕獲視訊裝置的ID,device = 0表示只有一個

python+openCV呼叫攝像頭拍攝和處理圖片

在深度學習過程中想做手勢識別相關應用,需要大量採集手勢圖片進行訓練,作為一個懶人當然希望飛快的連續採集圖片並且採集到的圖片就已經被處理成統一格式的啦。。於是使用python+openCV呼叫攝像頭,在採

Python OpenCV 呼叫攝像頭並截圖儲存

0x01 OpenCV安裝   通過命令pip install opencv-python 安裝 pip install opencv-python 0x02  示例 import cv2 cap = cv2.VideoCapture(0) #開啟攝像