1

我正在尝试使用 Ubuntu 上的 C 程序从我的网络摄像头捕获一些图像,但我无法使用 OpenCV 来解决硬件问题。我使用了这个简单的代码:

#include <stdio.h>
#include <stdlib.h>
#define SIZE 76800 // number of pixels (320x240 for my webcam)
int main() {
    FILE *camera, *grab;
    camera=fopen("/dev/video0", "rb");
    grab=fopen("grab.jpeg", "wb");
    float data[SIZE];
    fread(data, sizeof(data[0]), SIZE, camera);
    fwrite(data, sizeof(data[0]), SIZE, grab);
    fclose(camera);
    fclose(grab); 
    return 0;
}

编译我的代码 gcc -o snap cam.c并运行 snap 结果grab.jpeg文件。但它似乎不是 jpeg 格式。有没有可能直接生成一个jpeg文件?

4

0 回答 0