Делайте снимки с высоким разрешением с веб-камеры на Java - PullRequest
4 голосов
/ 10 июля 2011

Кто-нибудь знает библиотеку Java, которую можно использовать для захвата снимков изображений с высоким разрешением с веб-камеры?

Точнее: - определить доступные веб-камеры (ноутбуки могут иметь встроенную ивнешний, подключенный через USB-соединение) - Выберите веб-камеру для работы.- Определить доступные разрешения для захвата IMAGE (например, до 1280x1024 для веб-камеры с сенсором 1,3 Мп).Как правило, они намного больше, чем для захвата видео (например, до 640x480 для одной веб-камеры).- Выберите разрешение для работы.- По запросу (вызов функции API) сделайте снимок с выбранной камеры с выбранным разрешением.

Я пробовал: - JMF: отстой, не поддерживает автоматическое обнаружение подключенных веб-камер.- FMJ: использует LTI-CIVIL для поддержки веб-камеры.- LTI-CIVIL: поддерживает только захват видео.Код также очень старый (2007, если я правильно помню).Использует нативные библиотеки, написанные на C ++, для доступа к веб-камере.DirectX для Windows и Video4Linux для (очевидно) Linux.Но, глядя на код C ++, становится очевидно, что он ориентирован на потоковое видео, что не является моей целью (как отражено в описании того, что мне нужно)

Я был бы благодарен, если бы кто-нибудь мог указать мне на Javaбиблиотека, которая соответствует нужному мне профилю.

Спасибо.

Ответы [ 4 ]

2 голосов
/ 10 июля 2011

openCV - это популярная библиотека C ++ для машинного зрения.Тем не менее, у них также есть привязки Java.http://code.google.com/p/javacv/

OpenCV позволяет получить доступ к обработке изображений и видео, а также к захвату изображений и видео с нескольких веб-камер.

1 голос
/ 14 мая 2016

Этот API-интерфейс Java должен выполнять эту работу: http://webcam -capture.sarxos.pl / Следующий код делает снимок и сохраняет его в виде файла .png в папке рабочего пространства проекта.Обязательно просмотрите другие примеры создателя на их веб-сайте.

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import com.github.sarxos.webcam.Webcam;

public class TakePictureExample {

public static void main(String[] args) throws IOException {

    // get default webcam and open it
    Webcam webcam = Webcam.getDefault();
    webcam.open();

    // get image
    BufferedImage image = webcam.getImage();

    // save image to PNG file
    ImageIO.write(image, "PNG", new File("test.png"));
}
}
0 голосов
/ 10 июля 2011

Вы можете использовать JMyron , библиотека здесь , и вы можете увидеть, как она работает с этим примером

0 голосов
/ 10 июля 2011

Следующий проект с открытым исходным кодом, webcamstudio http://code.google.com/p/webcamstudio/ проделал большую работу, используя Java для поддержки веб-камеры.Возможно, возьмите некоторые идеи оттуда.

...