Javacv / opencv

Pessoal,

Alguém pode me dizer quais os .jars (do javaCV) que preciso importar no projeto para utilizar a biblioteca openCV no java? Onde baixo?
Como configurar pra os métodos ficarem disponíveis no Java?

Olá wellingtonfoz,

Você encontra tudo sobre o JavaCV no Site:
http://code.google.com/p/javacv/

Para configurar e utilizar o JavaCV baixe o arquivo “javacv-0.2-bin.zip” em:
http://code.google.com/p/javacv/downloads/list, extraia e importe os Jars no seu projeto.

Para o JavaCV reconhecer o OpenCV siga os seguintes Passos: (Windows)

 1) Instale o Microsoft Visual C++ Redistributable Packages 32bits ou 64bits
 2) Extraia o OpenCV-2.4.2 dentro do diretório C:\
 3) Configure a variável de ambiente do windows:
     Se for 32-bit coloque a linha abaixo no 'Path':
         [color=red]C:\opencv\build\common\tbb\ia32\vc10\;C:\opencv\build\x86\vc10\bin\;[/color]
     Senão, se for 64-bit coloque a linha abaixo no 'Path':
         [color=red]C:\opencv\build\common\tbb\intel64\vc10\;C:\opencv\build\x64\vc10\bin\;[/color]
 4) Pronto!

Se for no linux siga o seguinte tutorial abaixo (Ubuntu 12.04)
http://karytech.blogspot.com.br/2012/05/opencv-24-on-ubuntu-1204.html

Agora é só rodar o seu projeto!

To tentando fazer um simples exemplo aqui e me parece que nem todos os métodos da OpenCV ficam disponíveis via JavaCV. É isso mesmo? Por exemplo: cvWaitKey(int) ele não reconhece…

São só esses .jars que tem que importar mesmo?

O que faço (onde coloco) com essas pastas:
ffmpeg-0.7.1-win32-shared, libdc1394-2.2.0, procamcalib-bin, procamtracker-bin

Só são esses Jars mesmo.

A questão é o seguinte:

É que o método cvWaitKey(int) e outros métodos também são estáticos, por esse motivo você deve fazer a importação estática dele também, nesse caso com:

Isso é fator importante a ser observado, e a biblioteca JavaCV é baseada nesse tipo de implementação devido ela apenas utilizar os métodos nativos da biblioteca OpenCV através do JNA.

Rode esse exemplo:

import com.googlecode.javacv.CanvasFrame;
import com.googlecode.javacv.OpenCVFrameGrabber;
import static com.googlecode.javacv.cpp.opencv_core.*;
import static com.googlecode.javacv.cpp.opencv_highgui.*;

/**
 *
 * @author wesllen
 */
public class Camera {
    
    private static volatile boolean isRunning = true;
    
    public static void main(String[] args) throws Exception {
    
        CanvasFrame canvas = new CanvasFrame("Camera Capture");
        
        OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);
        grabber.start();
        
        IplImage frame;
        while(isRunning){
            if((frame = grabber.grab()) == null){
                break;
            }
            cvWaitKey(2);
            canvas.showImage(frame);
        }
        
        grabber.stop();
        canvas.dispose();
    }
    
}

Eu sugiro você estudar alguns exemplos fornecidos no site do JavaCV, pois o mesmo ainda é carente de documentação.

[quote]O que faço (onde coloco) com essas pastas:
ffmpeg-0.7.1-win32-shared, libdc1394-2.2.0, procamcalib-bin, procamtracker-bin[/quote]

Pra você que está começando essas pastas não fazem diferença, as duas últimas são projetos prontos de calibragem de câmera e outros exemplos.

[quote=Wesllen][quote]O que faço (onde coloco) com essas pastas:
ffmpeg-0.7.1-win32-shared, libdc1394-2.2.0, procamcalib-bin, procamtracker-bin[/quote]

Pra você que está começando essas pastas não fazem diferença, as duas últimas são projetos prontos de calibragem de câmera e outros exemplos.[/quote]

hmmm… verdade! Deu certo!
Eu estou acostumado a fazer Ctrl + shift + O no Eclipse para importar automaticamente, mas para esses casos não funciona. Tem-se que importar manualmente.

Obrigado.

[quote=Wesllen]Só são esses Jars mesmo.

A questão é o seguinte:

É que o método cvWaitKey(int) e outros métodos também são estáticos, por esse motivo você deve fazer a importação estática dele também, nesse caso com:

Isso é fator importante a ser observado, e a biblioteca JavaCV é baseada nesse tipo de implementação devido ela apenas utilizar os métodos nativos da biblioteca OpenCV através do JNA.

Rode esse exemplo:

import com.googlecode.javacv.CanvasFrame;
import com.googlecode.javacv.OpenCVFrameGrabber;
import static com.googlecode.javacv.cpp.opencv_core.*;
import static com.googlecode.javacv.cpp.opencv_highgui.*;

/**
 *
 * @author wesllen
 */
public class Camera {
    
    private static volatile boolean isRunning = true;
    
    public static void main(String[] args) throws Exception {
    
        CanvasFrame canvas = new CanvasFrame("Camera Capture");
        
        OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);
        grabber.start();
        
        IplImage frame;
        while(isRunning){
            if((frame = grabber.grab()) == null){
                break;
            }
            cvWaitKey(2);
            canvas.showImage(frame);
        }
        
        grabber.stop();
        canvas.dispose();
    }
    
}

Eu sugiro você estudar alguns exemplos fornecidos no site do JavaCV, pois o mesmo ainda é carente de documentação.
[/quote]

Bom dia sou novo em java e interface grafica fiz todos os passos e ainda esta com erro na linha 23…
bad operand types for binary operator ‘==’

o que esta faltando ou estou fazendo algo de errado???
e gostaria de saber se vc pode me informar algum link com material para ajudar…ou video aulas
desde ja agradeço.

[quote=Wesllen]Olá wellingtonfoz,

Você encontra tudo sobre o JavaCV no Site:
http://code.google.com/p/javacv/

Para configurar e utilizar o JavaCV baixe o arquivo “javacv-0.2-bin.zip” em:
http://code.google.com/p/javacv/downloads/list, extraia e importe os Jars no seu projeto.

Para o JavaCV reconhecer o OpenCV siga os seguintes Passos: (Windows)

 1) Instale o Microsoft Visual C++ Redistributable Packages 32bits ou 64bits
 2) Extraia o OpenCV-2.4.2 dentro do diretório C:\
 3) Configure a variável de ambiente do windows:
     Se for 32-bit coloque a linha abaixo no 'Path':
         [color=red]C:\opencv\build\common\tbb\ia32\vc10\;C:\opencv\build\x86\vc10\bin\;[/color]
     Senão, se for 64-bit coloque a linha abaixo no 'Path':
         [color=red]C:\opencv\build\common\tbb\intel64\vc10\;C:\opencv\build\x64\vc10\bin\;[/color]
 4) Pronto!

Se for no linux siga o seguinte tutorial abaixo (Ubuntu 12.04)
http://karytech.blogspot.com.br/2012/05/opencv-24-on-ubuntu-1204.html

Agora é só rodar o seu projeto![/quote]

sabe informar se o mesmo pode ser instalado em Mac OS?