Como detecto o tipo de câmera instalada?

12

Preciso saber como detectar remotamente se um módulo de câmera de 8mp ou 5mp está conectado ao rpi para implementação em um projeto incorporado.

Qualquer ajuda?

Boris Spektor
fonte
Por que não procurar on-line as especificações da câmera?
Darth Vader
O dispositivo em si estará inacessível e, portanto, preciso identificar o modelo da câmera por meio de ssh.
Boris Spektor 29/04
2
Tire uma foto e veja a resolução / tamanho? Deve ser significativamente diferente.
Ghanima
Existe um comando cli para ver as dimensões de uma imagem? Nesse caso, eu poderia apenas canalizar a saída do raspistill para esse comando info.
Boris Spektor 29/04
obtenha alguma inspiração aqui superuser.com/questions/275502/… e aqui unix.stackexchange.com/questions/75635/…
Ghanima

Respostas:

8

Nenhuma das acima.

Aproveite o driver v4l ( modprobe bcm2835-v4l2) e use o v4l2-ctlcomando da CLI ou, se desejar, use as bibliotecas v4l2 de python ou C:

# v4l2-ctl --list-formats
ioctl: VIDIOC_ENUM_FMT
        Index       : 0
        Type        : Video Capture
        Pixel Format: 'YU12'
        Name        : Planar YUV 4:2:0

(muito mais saída)

# v4l2-ctl --list-framesizes=YU12
ioctl: VIDIOC_ENUM_FRAMESIZES
        Size: Stepwise 16x16 - 2592x1944 with step 2/2
JayEye
fonte
A questão real é aparentemente como posso obter o V412-ctl? Comigo, apenas diz "não existe esse arquivo ou diretório". "Não foi possível localizar o pacote v412-ct" Sem essas informações, a resposta está incompleta.
Albert van der Horst
3

Nenhuma das opções acima funcionou para mim. Com Raspbian Stretch (versão de junho de 2018, Kernel 4.14), Python 3.5 e picamera 1.13, usei:

import picamera

with picamera.PiCamera() as cam:
    print(cam.revision)
EdMc2
fonte
2

Se você gosta da codificação C, dê uma olhada nas linhas relevantes em raspistill que usam a nova MMAL_PARAMETER_CAMERA_INFOpara pesquisar o tipo de câmera conectada.

Se você não estiver tão satisfeito com C, precisará esperar uma semana ou mais, enquanto eu termino a picamera 1.11, que terá um novo PiCamera.modelparâmetro que você pode consultar pelas mesmas informações (isso retornará uma string contendo o nome do sensor como retornado por MMAL_PARAMETER_CAMERA_INFO).

Atualizar Como mostra a resposta do EdMc2, acabei chamando isso PiCamera.revisionde modelo!

Dave Jones
fonte
Obrigado pela atualização! Este post mostra em primeiro lugar em uma pesquisa para 'modelo picamera get' então eu sou grato para a farinha de rosca
Mike McCabe
0

A resposta de EdMc2 funcionou para mim - mas cam.revision apenas exibe o nome do sensor da câmera. Então eu encontrei a resolução máxima como esta:

import picamera

with picamera.PiCamera() as cam:
    print(cam.MAX_RESOLUTION)

Você pode salvar o arquivo (por exemplo, picamera.py) e executá-lo assim:

python3 picamera.py

Meu resultado é 2592x1944qual é a câmera de 5MP.

thinklogically
fonte