Bagaimana cara mendeteksi tipe kamera yang dipasang?

12

Saya perlu tahu cara mendeteksi dari jarak jauh apakah modul kamera 8mp atau 5mp terhubung ke rpi untuk implementasi dalam proyek tertanam.

Ada bantuan?

Boris Spektor
sumber
Mengapa tidak mencari spesifikasi kamera secara online?
Darth Vader
Perangkat itu sendiri tidak dapat diakses dan jadi saya perlu mengidentifikasi model kamera meskipun ssh.
Boris Spektor
2
Ambil gambar dan lihat resolusi / ukuran? Harus sangat berbeda.
Ghanima
Apakah ada perintah cli untuk melihat dimensi gambar? Jika demikian maka saya hanya bisa menyalurkan output dari raspistill ke perintah info itu.
Boris Spektor

Jawaban:

8

Bukan dari salah satu di atas.

Manfaatkan driver v4l ( modprobe bcm2835-v4l2), dan gunakan v4l2-ctlperintah dari CLI, atau, jika Anda ingin menjadi mewah, gunakan pustaka v4l2 dari python atau C:

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

(lebih banyak output)

# v4l2-ctl --list-framesizes=YU12
ioctl: VIDIOC_ENUM_FRAMESIZES
        Size: Stepwise 16x16 - 2592x1944 with step 2/2
JayEye
sumber
Pertanyaan sebenarnya adalah bagaimana saya bisa mendapatkan V412-ctl? Dengan saya itu hanya mengatakan "tidak ada file atau direktori". "Tidak dapat menemukan paket v412-ct" Tanpa informasi ini jawabannya tidak lengkap.
Albert van der Horst
3

Tak satu pun dari yang di atas bekerja untuk saya. Dengan Raspbian Stretch (Versi Juni 2018, Kernel 4.14), Python 3.5 dan picamera 1.13 saya menggunakan:

import picamera

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

Jika Anda senang mengode C, lihat baris yang relevan di raspistill yang menggunakan yang baru MMAL_PARAMETER_CAMERA_INFOuntuk mencari jenis kamera yang terpasang.

Jika Anda tidak begitu suka dengan C, Anda harus menunggu seminggu atau lebih sementara saya menyelesaikan picamera 1.11 yang akan memiliki PiCamera.modelparameter baru Anda dapat meminta informasi yang sama (ini akan mengembalikan string yang berisi nama sensor sebagai dikembalikan oleh MMAL_PARAMETER_CAMERA_INFO).

Pembaruan Seperti yang ditunjukkan oleh jawaban EdMc2 dengan rapi, saya akhirnya memanggil ini PiCamera.revisiondaripada model!

Dave Jones
sumber
Terima kasih atas pembaruannya! Posting ini muncul pertama kali dalam pencarian untuk 'picamera get model' jadi saya berterima kasih atas remah roti
Mike McCabe
0

Jawaban EdMc2 bekerja untuk saya - tetapi cam.revision hanya menampilkan nama sensor kamera. Jadi saya menemukan resolusi maksimal seperti ini:

import picamera

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

Anda dapat menyimpan file (misalnya, picamera.py) dan menjalankannya seperti ini:

python3 picamera.py

Hasil saya 2592x1944adalah kamera 5MP.

berpikir secara logis
sumber