csi — kamera sensörleri

csi modülü, bir OpenMV Cam üzerindeki kamera sensörlerine yönelik modern, nesne yönelimli arayüzdür. Her fiziksel sensör bir CSI örneğiyle temsil edilir; böylece bir renk sensörünü termal veya olay sensörüyle eşleştiren çok spektrumlu görüntüleyici kartları, yapıcıya farklı bir cid geçirerek her birini bağımsız olarak çalıştırabilir. Tek sensörlü kameralar yalnızca bir CSI örneği oluşturur.

Bir CSI nesnesi, tam sensör yapılandırmasının sahibidir – piksel formatı, çerçeve boyutu / pencere, pozlama / kazanç / beyaz dengesi, donanımsal aynalama ve çevirme, renk çubuğu test deseni, çerçeve hızı saati, otomatik pozlama için ROI ve çipe özgü ioctl komutları. Çerçeveler CSI.snapshot() ile yakalanır; bu, çerçeve arabelleği (frame buffer) tarafından desteklenen bir image.Image döndürür.

Bu modül, eski sensor modülünün yerini alır (eski modül aynı işlevselliği, tek bir gizli sensöre bağlı modül düzeyindeki fonksiyonlar olarak sunuyordu). Yeni kod CSI kullanmalıdır.

Örnek kullanım:

import csi

# Setup camera.
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize(csi.QVGA)
csi0.snapshot(time=2000)  # skip frames

# Take pictures.
while(True):
    csi0.snapshot()

Asyncio kullanımı

Yukarıdaki bloke eden CSI.snapshot() döngüsü, asyncio olay döngüsüyle iş birliği yapmaz – snapshot bir sonraki çerçeveyi beklerken, programdaki diğer her coroutine donar. Bir yakalama döngüsünün diğer eşzamanlı işlerle (bir UART istemcisi, bir buton gözlemcisi, bir ağ görevi) bir arada var olabilmesi için, CSI nesnesini snapshot çağrısını await-uyumlu bir coroutine’e dönüştüren küçük bir bağdaştırıcıyla sarın; bu bağdaştırıcı snapshot(blocking=False) çağrısını yoklar ve kontroller arasında olay döngüsüne kontrolü bırakır:

import asyncio
import csi


class AsyncCSI:
    def __init__(self, *args, **kwargs):
        self._csi = csi.CSI(*args, **kwargs)

    def __getattr__(self, name):
        return getattr(self._csi, name)

    async def snapshot(self):
        while True:
            img = self._csi.snapshot(blocking=False)
            if img is not None:
                return img
            await asyncio.sleep_ms(0)

__getattr__ diğer her özniteliği (reset, pixformat, framesize, sensör ayarları) alttaki CSI nesnesine yönlendirir; böylece sarmalayıcı yerine doğrudan kullanılabilir bir alternatiftir. İlk bloke etmeyen çağrı, eğer henüz çalışmıyorsa kameranın DMA yakalamasını da başlatır; bu nedenle ek bir başlatma işlemine gerek yoktur.

Bir yakalama döngüsü daha sonra daha büyük bir asyncio programına başka bir coroutine olarak sığar:

async def capture_loop(cam):
    while True:
        img = await cam.snapshot()
        # process img here

async def main():
    cam = AsyncCSI()
    cam.reset()
    cam.pixformat(csi.RGB565)
    cam.framesize(csi.QVGA)

    asyncio.create_task(some_other_task())
    await capture_loop(cam)

asyncio.run(main())

framebuffers ayarı bu yapıda da önemlidir – tek arabellek modu, snapshot(blocking=False) çağrısının bir sonraki çerçeve yakalanana kadar None döndürmesine neden olurken, çift veya üçlü arabellekleme bunu yumuşatır; böylece sarmalayıcı genellikle ilk yoklamada bekleyen arabelleğe alınmış bir çerçeve bulur. Tam anlatım için asyncio öğreticisindeki AsyncCSI bölümüne bakın.

class CSI – Kamera Sensör Arayüzü

CSI sınıfı, bir kamera sensörünü kontrol etmek için kullanılır.

class csi.CSI(cid: int = -1, delays: bool = True, fflush: bool = True, stream: bool | None = None)

Bir kamera sensörüyle iletişim kurmak için bir nesne oluşturur. Birden fazla sensöre sahip kartlarda, belirli bir CSI nesnesi, bir FLIR Lepton sensör modülünü seçmek için csi.LEPTON gibi bir cid geçirilerek seçilebilir. cid -1 ise birincil sensör seçilir (çok sensörlü kartlarda tipik olarak bir renkli kamera modülü).

delays False ise csi sürücüsündeki tüm yerleşme süresi gecikmeleri devre dışı bırakılır. Varsayılan olarak sensör sürücüsü, CSI.snapshot tarafından bozuk çerçeveler döndürülmesini önlemek için sıfırlama / mod değişikliğinden sonra gecikir. Gecikmeleri devre dışı bırakmak, güncellemeleri toplu hâlde yapmanıza ve CSI.snapshot çağrılmadan önce sonda tek bir gecikme uygulamanıza olanak tanır.

fflush False ise CSI.framebuffers içinde bahsedilen otomatik çerçeve arabelleği boşaltması devre dışı bırakılır. Bu, çerçeve arabelleği fifo’sundaki çerçeveler üzerindeki tüm zaman sınırını kaldırır.

stream, bu CSI’nin IDE’ye gönderilen akış kaynağı olup olmadığını seçer. None ise (varsayılan) CSI yalnızca birincil (yardımcı olmayan) sensör ise akış kaynağı olur. Bu CSI’yi akış kaynağı olmaya zorlamak için True geçirin veya mevcut akış kaynağını değiştirmeden bırakmak için herhangi bir yanlış değer geçirin.

Yöntemler

reset(hard: bool = True) None

Kamera sensörünü başlatır. hard True ise kamera modülüne giden RESET sinyal GPIO’sunu değiştirerek bir donanım sıfırlaması gerçekleştirir. Birincil modülle aynı RESET sinyal GPIO’sunu paylaşan yardımcı kamera sensörleri sıfırlanırken hard false olarak ayarlanmalıdır.

shutdown(enable: bool) None

Kamerayı uykudan daha düşük güçlü bir moda alır (ancak uyandırıldığında kameranın sıfırlanması gerekir).

sleep(enable: bool) None

enable True ise kamerayı uyku moduna alır. Aksi takdirde tekrar uyandırır.

flush() None

Geçerli çerçeve arabelleği (frame buffer) içeriğini IDE önizlemesine kopyalar. Betik sona ererse IDE’nin son çerçeveyi göstermesi için bunu son CSI.snapshot çağrısından sonra çağırın.

snapshot(time: int = -1, frames: int = -1, blocking: bool = True, image: image.Image | None = None) image.Image | None

Kamerayı kullanarak bir resim çeker ve bir image.Image nesnesi döndürür.

time ve/veya frames geçirilirse snapshot, belirtilen sayıda time milisaniye ve/veya kameradan yakalanan frames çerçeve boyunca bloke olur. Her iki argüman aynı anda kullanılabilir. time ve/veya frames geçtikten sonra snapshot None döndürür.

blocking, bloke etmeyen davranışı etkinleştirmek için False olabilir; bu, kameradan gelen bir sonraki görüntü hazır olmadığında snapshot’ın beklemek yerine None döndürmesine neden olur.

image, yeni bir image.Image nesnesi döndürmek yerine kameradan yakalanan yeni görüntüyle güncellenecek başka bir image.Image nesnesi olabilir. Önceki görüntü içeriği derin kopya yoluyla üzerine yazılır.

CSI.auto_rotation etkinse bu yöntem zaten döndürülmüş bir image.Image döndürür.

width() int

Sensör çözünürlüğü genişliğini döndürür.

height() int

Sensör çözünürlüğü yüksekliğini döndürür.

cid() int

Kamera modülünün çip kimliğini döndürür. csi.OV2640, csi.OV5640, csi.OV7670, csi.OV7690, csi.OV7725, csi.OV9650, csi.MT9V022, csi.MT9V024, csi.MT9V032, csi.MT9V034, csi.MT9M114, csi.BOSON320, csi.BOSON640, csi.LEPTON, csi.HM01B0, csi.HM0360, csi.GC2145, csi.GENX320ES, csi.GENX320, csi.PAG7920, csi.PAG7936, csi.PAJ6100, csi.FROGEYE2020 veya csi.SOFTCSI değerlerinden herhangi biriyle karşılaştırın.

readable() bool

CSI.snapshot tarafından döndürülmeye hazır bir görüntü varsa True döndürür; böylece snapshot çağrısı bloke olmaz.

pixformat(pixformat: int | None = None) int | None

Kamera modülünün piksel formatını csi.GRAYSCALE, csi.RGB565, csi.BAYER, csi.YUV422 veya csi.JPEG (yalnızca OV2640/OV5640’ta) değerlerinden birine ayarlar.

Argümansız çağrıldığında geçerli pixformat’ı döndürür.

framesize(framesize: int | Tuple[int, int] | None = None) int | None

Kamera modülünün çerçeve boyutunu boyut sabitlerinden birine ayarlar (örn. csi.QVGA, csi.VGA, csi.HD vb. — sabitler bölümüne bakın).

Alternatif olarak, özel bir çerçeve boyutunu (w, h) tuple’ı olarak geçirebilirsiniz. CSI.snapshot çağrıldığında özel çerçeve boyutu DMA kurallarına göre değerlendirilir. Genellikle çerçeve boyutlarının 8 pikselin ve/veya 16 baytın katı olması gerekir.

Argümansız çağrıldığında geçerli framesize’ı döndürür.

framerate(rate: int | None = None) int | None

Kamera modülü için çerçeve hızını Hz cinsinden ayarlar.

Argümansız çağrıldığında geçerli framerate’i döndürür.

Not

CSI.framerate, çerçeve hızını belirtilen hızda veya altında tutmak için kamera modülünden alınan çerçeveleri atarak çalışır. Varsayılan olarak kamera maksimum çerçeve hızında çalışır. Belirli kamera sensörü için uygulanmışsa CSI.framerate, gücü korumak ve sensör pozlamasını artırarak görüntü kalitesini iyileştirmek için kamera sensörü çerçeve hızını dahili olarak da azaltır. CSI.framerate, bazı kameralarda CSI.auto_exposure ile çakışabilir.

window(roi: Tuple[int, int] | Tuple[int, int, int, int] | None = None) Tuple[int, int, int, int] | None

Kameranın çözünürlüğünü geçerli çözünürlüğün bir alt bölgesine ayarlar. roi bir (x, y, w, h) tuple’ıdır. Ayrıca (w, h) geçirebilirsiniz; bu durumda pencere ortalanır.

Argümansız çağrıldığında geçerli (x, y, w, h) tuple’ını döndürür.

gainceiling(gainceiling: int) bool

Kamera görüntüsünün kazanç tavanını (gainceiling) 2, 4, 8, 16, 32, 64 veya 128’den birine ayarlar.

Başarı durumunda True, başarısızlık durumunda False döndürür.

brightness(brightness: int) bool

Kamera görüntüsünün parlaklığını ayarlar.

Başarı durumunda True, başarısızlık durumunda False döndürür.

contrast(contrast: int) bool

Kamera görüntüsünün kontrastını ayarlar.

Başarı durumunda True, başarısızlık durumunda False döndürür.

saturation(saturation: int) bool

Kamera görüntüsünün doygunluğunu ayarlar.

Başarı durumunda True, başarısızlık durumunda False döndürür.

quality(quality: int) bool

Kamera görüntüsünün JPEG sıkıştırma kalitesini ayarlar. 0 - 100.

Başarı durumunda True, başarısızlık durumunda False döndürür.

Not

Yalnızca OV2640/OV5640 kameraları için.

colorbar(enable: bool) bool

Renk çubuğu modunu açar (True) veya kapatır (False). Varsayılan olarak kapalıdır.

Başarı durumunda True, başarısızlık durumunda False döndürür.

auto_gain(enable: bool, gain_db: float | None = None, gain_db_ceiling: float | None = None) None

enable, otomatik kazanç kontrolünü açar (True) veya kapatır (False). Kamera otomatik kazanç kontrolü açık olarak başlar.

enable False ise gain_db ile sabit bir kazancı desibel cinsinden ayarlayabilirsiniz.

enable True ise otomatik kazanç kontrol algoritması için gain_db_ceiling ile maksimum kazanç tavanını desibel cinsinden ayarlayabilirsiniz.

Not

Renkleri izlemek istiyorsanız beyaz dengesini de kapatmanız gerekir.

gain_db() float

Geçerli kamera kazanç değerini desibel cinsinden döndürür.

auto_exposure(enable: bool, exposure_us: int = -1) None

enable, otomatik pozlama kontrolünü açar (True) veya kapatır (False). Kamera otomatik pozlama kontrolü açık olarak başlar.

enable False ise exposure_us ile sabit bir pozlama süresini mikrosaniye cinsinden ayarlayabilirsiniz.

Not

Kamera otomatik pozlama algoritmaları, pozlama değerini ne kadar ayarladıkları konusunda oldukça temkinlidir ve genellikle pozlama değerini fazla değiştirmekten kaçınır. Bunun yerine, değişen aydınlatmayla başa çıkmak için kazanç değerini çokça değiştirirler.

exposure_us() int

Geçerli kamera pozlama değerini mikrosaniye cinsinden döndürür.

auto_whitebal(enable: bool, rgb_gain_db: Tuple[float, float, float] | None = None) None

enable, otomatik beyaz dengesini açar (True) veya kapatır (False). Kamera otomatik beyaz dengesi açık olarak başlar.

enable False ise rgb_gain_db ile kırmızı, yeşil ve mavi kanalları için ayrı ayrı sabit bir kazancı desibel cinsinden ayarlayabilirsiniz.

Not

Renkleri izlemek istiyorsanız kazanç kontrolünü de kapatmanız gerekir.

rgb_gain_db() Tuple[float, float, float]

Geçerli kamera kırmızı, yeşil ve mavi kazanç değerlerinin desibel cinsinden bir (r, g, b) tuple’ını döndürür.

auto_blc(enable: bool, regs: List[int] | None = None) None

Kameradaki otomatik siyah seviyesi kalibrasyonunu (BLC) ayarlar.

enable, BLC’yi açmak veya kapatmak için True veya False geçirin. Genellikle bunu her zaman açık tutmak istersiniz.

regs devre dışı bırakılırsa, önceki bir CSI.blc_regs çağrısından elde edilen BLC yazmaç değerlerini manuel olarak ayarlayabilirsiniz.

blc_regs() List[int]

Sensör BLC yazmaçlarını bir tamsayı listesi olarak döndürür. CSI.auto_blc ile birlikte kullanım içindir.

hmirror(enable: bool | None = None) bool | None

Yatay aynalama modunu açar (True) veya kapatır (False). Varsayılan olarak kapalıdır.

Argümansız çağrıldığında geçerli ayarı döndürür.

vflip(enable: bool | None = None) bool | None

Dikey çevirme modunu açar (True) veya kapatır (False). Varsayılan olarak kapalıdır.

Argümansız çağrıldığında geçerli ayarı döndürür.

transpose(enable: bool | None = None) bool | None

Transpoze modunu açar (True) veya kapatır (False). Varsayılan olarak kapalıdır.

  • vflip=False, hmirror=False, transpose=False -> 0 derece döndürme

  • vflip=True, hmirror=False, transpose=True -> 90 derece döndürme

  • vflip=True, hmirror=True, transpose=False -> 180 derece döndürme

  • vflip=False, hmirror=True, transpose=True -> 270 derece döndürme

Argümansız çağrıldığında geçerli ayarı döndürür.

auto_rotation(enable: bool | None = None) bool | None

Otomatik döndürme modunu açar (True) veya kapatır (False). Varsayılan olarak kapalıdır.

Argümansız çağrıldığında geçerli ayarı döndürür.

Not

Bu yöntem yalnızca OpenMV Cam’de bir imu takılı olduğunda çalışır ve otomatik olarak etkinleştirilir.

framebuffers(count: int | None = None) int | None

Görüntü verisi almak için kullanılan çerçeve arabelleği sayısını ayarlar. Varsayılan olarak OpenMV Cam, ayırabileceği maksimum sayıda çerçeve arabelleği ayırmaya çalışır. CSI.pixformat, CSI.framesize veya CSI.window çağrıldığında yeniden ayırma gerçekleşir.

count 1 (tek arabellek), 2 (çift arabellek) veya 3 (üçlü arabellek) değeri ilgili yakalama modunu seçer. Sürücüyü count arabelleğin sıraya alındığı video FIFO moduna almak için 4 veya daha büyük bir değer geçirin — bu, bir SD karta video kaydetmek için kullanışlıdır. Çerçeve atıldığında, aktif olan dışındaki tüm çerçeve arabellekleri temizlenir; böylece CSI.snapshot her zaman güncel bir çerçeve döndürür.

Argümansız çağrıldığında geçerli sayıyı döndürür.

special_effect(effect: int) bool

Özel dijital efekti ayarlar (csi.NORMAL veya csi.NEGATIVE değerlerinden biri).

Başarı durumunda True, başarısızlık durumunda False döndürür.

lens_correction(enable: bool, radi: int, coef: int) bool

enable etkinleştirmek için True, devre dışı bırakmak için False. radi düzeltilecek piksellerin tamsayı yarıçapı. coef düzeltme gücü.

Başarı durumunda True, başarısızlık durumunda False döndürür.

vsync_callback(cb: Callable[[int], None] | None = None) Callable[[int], None] | None

Kamera modülü her yeni çerçeve oluşturduğunda (ancak çerçeve alınmadan önce) çalıştırılacak cb geri çağırmasını (kesme bağlamında) kaydeder.

cb bir argüman alır ve değişiklikten sonra vsync pininin geçerli durumu kendisine geçirilir.

Argümansız çağrıldığında kayıtlı geri çağırmayı döndürür. Geri çağırmayı temizlemek için çağrılabilir olmayan herhangi bir değer geçirin.

frame_callback(cb: Callable[[], None] | None = None) Callable[[], None] | None

Kamera modülü her yeni çerçeve oluşturduğunda ve çerçeve CSI.snapshot aracılığıyla okunmaya hazır olduğunda çalıştırılacak cb geri çağırmasını (kesme bağlamında) kaydeder.

cb hiçbir argüman almaz. Bir çerçeveyi daha sonra micropython.schedule() ile okumayı zamanlamak için bunu kullanın.

Argümansız çağrıldığında kayıtlı geri çağırmayı döndürür. Geri çağırmayı temizlemek için çağrılabilir olmayan herhangi bir değer geçirin.

ioctl(request: int, *args) Any

Sensöre özgü bir istek yürütür. request, IOCTL_* sabitlerinden biridir; kalan konumsal argümanlar ve dönüş değeri isteğe bağlıdır. Desteklenen istekler aşağıda sensör ailesine göre gruplandırılmıştır.

Genel (herhangi bir sensör):

ioctl(IOCTL_SET_READOUT_WINDOW, (x, y, w, h))

ioctl(IOCTL_SET_READOUT_WINDOW, (w, h))

Sensör okuma penceresini ayarlar. Daha küçük bir pencere, görüş alanı pahasına çerçeve hızını artırır.

ioctl(IOCTL_GET_READOUT_WINDOW)

Geçerli okuma penceresini bir (x, y, w, h) tuple’ı olarak döndürür.

ioctl(IOCTL_SET_TRIGGERED_MODE, enable)

MT9V034’te tetiklemeli modu etkinleştirir (True) veya devre dışı bırakır (False).

ioctl(IOCTL_GET_TRIGGERED_MODE)

Geçerli tetiklemeli mod durumunu bir bool olarak döndürür.

ioctl(IOCTL_SET_FOV_WIDE, enable)

True olduğunda, framesize() yöntemine çerçeve hızı yerine görüş alanı için optimizasyon yapmasını söyler.

ioctl(IOCTL_GET_FOV_WIDE)

Geçerli FOV-geniş durumunu bir bool olarak döndürür.

ioctl(IOCTL_SET_NIGHT_MODE, enable)

Sensörün düşük ışık “gece modunu” etkinleştirir (True) veya devre dışı bırakır (False). Yalnızca OV7725 ve OV5640.

ioctl(IOCTL_GET_NIGHT_MODE)

Geçerli gece modu durumunu bir bool olarak döndürür.

ioctl(IOCTL_GET_RGB_STATS)

Sensörden okunan ham RGB kanalı istatistiklerinin bir 4’lü tuple’ını (r, gb, gr, b) döndürür (tipik olarak beyaz dengesi ayarı için kullanılır).

OV5640 FPC – otomatik odaklama:

ioctl(IOCTL_TRIGGER_AUTO_FOCUS)

OV5640 FPC modülünde bir otomatik odaklama taraması başlatır.

ioctl(IOCTL_PAUSE_AUTO_FOCUS)

Devam eden bir otomatik odaklama taramasını duraklatır.

ioctl(IOCTL_RESET_AUTO_FOCUS)

Otomatik odaklama konumunu varsayılana sıfırlar.

ioctl(IOCTL_WAIT_ON_AUTO_FOCUS)

ioctl(IOCTL_WAIT_ON_AUTO_FOCUS, timeout_ms)

Geçerli otomatik odaklama taraması bitene kadar bloke olur. timeout_ms atlanırsa varsayılan olarak 5000’dir.

FLIR Lepton:

ioctl(IOCTL_LEPTON_GET_WIDTH)

Lepton görüntü genişliğini piksel cinsinden döndürür.

ioctl(IOCTL_LEPTON_GET_HEIGHT)

Lepton görüntü yüksekliğini piksel cinsinden döndürür.

ioctl(IOCTL_LEPTON_GET_RADIOMETRY)

Lepton’un türünü (radyometrik olup olmadığını) bir int olarak döndürür.

ioctl(IOCTL_LEPTON_GET_REFRESH)

Lepton’un yenileme hızını Hz cinsinden döndürür.

ioctl(IOCTL_LEPTON_GET_RESOLUTION)

Lepton’un ADC çözünürlüğünü bit cinsinden döndürür.

ioctl(IOCTL_LEPTON_RUN_COMMAND, cmd)

Bir FLIR Lepton SDK komutu çalıştırır. cmd, SDK tarafından tanımlanan 16 bitlik komut kimliğidir.

ioctl(IOCTL_LEPTON_SET_ATTRIBUTE, attr_id, payload)

Bir Lepton SDK özniteliğini yazar. attr_id 16 bitlik öznitelik kimliğidir; payload, uzunluğu 16 bitin katı olması gereken bir bytes/bytearray değeridir.

ioctl(IOCTL_LEPTON_GET_ATTRIBUTE, attr_id, words)

Bir Lepton SDK özniteliğini okur. attr_id 16 bitlik öznitelik kimliğidir; words okunacak 16 bitlik kelime sayısıdır. Bir bytearray döndürür.

ioctl(IOCTL_LEPTON_GET_FPA_TEMP)

Lepton odak düzlemi dizisi sıcaklığını Santigrat derece cinsinden döndürür.

ioctl(IOCTL_LEPTON_GET_AUX_TEMP)

Lepton yardımcı sıcaklığını Santigrat derece cinsinden döndürür.

ioctl(IOCTL_LEPTON_SET_MODE, measurement_enabled)

ioctl(IOCTL_LEPTON_SET_MODE, measurement_enabled, high_temp_enabled)

Lepton’u AGC ve doğrudan sıcaklık çıkışı arasında değiştirir. measurement_enabled=True doğrudan sıcaklık çıkışını etkinleştirir. İsteğe bağlı high_temp_enabled bayrağı yüksek sıcaklık aralığını seçer.

ioctl(IOCTL_LEPTON_GET_MODE)

Bir 2’li tuple (measurement_enabled, high_temp_enabled) döndürür.

ioctl(IOCTL_LEPTON_SET_RANGE, (min_celsius, max_celsius))

Ölçüm modu etkinleştirildiğinde 0..255 aralığına eşlenen sıcaklık aralığını ayarlar.

ioctl(IOCTL_LEPTON_GET_RANGE)

Geçerli (min_celsius, max_celsius) aralığını döndürür.

Himax HM01B0 – hareket tespiti:

ioctl(IOCTL_HIMAX_MD_ENABLE, enable)

HM01B0’ın sensör üzerindeki hareket tespiti bloğunu etkinleştirir (True) veya devre dışı bırakır (False).

ioctl(IOCTL_HIMAX_MD_WINDOW, (x, y, w, h))

ioctl(IOCTL_HIMAX_MD_WINDOW, (w, h))

HM01B0’da hareket tespiti penceresini ayarlar.

ioctl(IOCTL_HIMAX_MD_THRESHOLD, threshold)

Hareket tespiti eşiğini ayarlar (0255).

ioctl(IOCTL_HIMAX_MD_CLEAR)

Hareket tespiti kesme mandalını temizler.

ioctl(IOCTL_HIMAX_OSC_ENABLE, enable)

HM01B0’ın dahili osilatörünü etkinleştirir (True) veya devre dışı bırakır (False).

Prophesee GENX320 – olay sensörü:

ioctl(IOCTL_GENX320_SET_BIASES, preset)

Bir bias ön ayarı uygular. preset, GENX320_BIASES_* sabitlerinden biridir.

ioctl(IOCTL_GENX320_SET_BIAS, bias, value)

Tek bir bias ayarlar. bias, GENX320_BIAS_* sabitlerinden biridir; value tamsayı ayardır.

ioctl(IOCTL_GENX320_SET_AFK, enable)

ioctl(IOCTL_GENX320_SET_AFK, enable, freq_low_hz, freq_high_hz)

Titreşim önleyici filtreyi yapılandırır. enable bir bool’dur; isteğe bağlı frekans argümanları filtre geçiş bandını ayarlar.

ioctl(IOCTL_GENX320_SET_STC, mode)

ioctl(IOCTL_GENX320_SET_STC, mode, arg1[, arg2])

Uzamsal-zamansal kontrast filtresini yapılandırır. mode, GENX320_STC_* sabitlerinden biridir; en fazla iki ek argüman moda özgüdür.

ioctl(IOCTL_GENX320_SET_MODE, mode)

ioctl(IOCTL_GENX320_SET_MODE, mode, evt_res)

Sensörü çerçeve ve olay modları arasında değiştirir. mode, GENX320_MODE_* sabitlerinden biridir. Olay modu için evt_res, IOCTL_GENX320_READ_EVENTS çağrısına geçirilen olay arabelleğinin satır ekseni uzunluğudur.

ioctl(IOCTL_GENX320_READ_EVENTS, buf)

Olayları buf içine okur; bu, (EVT_res, 6) şeklinde bir uint16 ndarray olup EVT_res 1024 ile 65536 arasında ikinin bir kuvvetidir. Sütunlar şunlardır:

  • [0] – olay türü (PIX_OFF_EVENT / PIX_ON_EVENT / tetikleyici).

  • [1] – saniye.

  • [2] – milisaniye.

  • [3] – mikrosaniye.

  • [4]x koordinatı.

  • [5]y koordinatı.

Yazılan olay sayısını döndürür.

ioctl(IOCTL_GENX320_READ_EVENTS_RAW)

GENX320’den gelen ham olay çerçevesini içeren bir image.Image döndürür.

ioctl(IOCTL_GENX320_CALIBRATE, iterations, sigma)

Gürültüsü normal dağılımdan sigma standart sapmadan daha fazla olan pikselleri kapatır. iterations, kalibrasyon geçişlerinin tamsayı sayısıdır. Devre dışı bırakılan piksellerin sayısını döndürür.

color_palette(palette: int | None = None) int | None

FLIR Lepton gri tonlamadan RGB565’e dönüştürme veya GENX320 olay görselleştirmesi gibi şeyler için kullanılacak renk paletini ayarlar. image.PALETTE_RAINBOW, image.PALETTE_IRONBOW ve (desteklendiğinde) image.PALETTE_DEPTH, image.PALETTE_EVT_DARK veya image.PALETTE_EVT_LIGHT değerlerinden biri.

Argümansız çağrıldığında geçerli ayarı döndürür.

__write_reg(address: int, value: int) None

address adresindeki kamera yazmacına value yazar.

Not

Yazmaç bilgileri için kamera veri sayfasına bakın.

__read_reg(address: int) int

address adresindeki kamera yazmacını okur.

Not

Yazmaç bilgileri için kamera veri sayfasına bakın.

Fonksiyonlar

csi.devices() List[int]

Tespit edilen sensör çip kimliklerinin bir listesini döndürür.

Sabitler

csi.BINARY: int

BINARY (bit eşlem) piksel formatı. Her piksel 1 bittir. Maske depolama için kullanışlıdır; image.Image() ile kullanılabilir.

csi.GRAYSCALE: int

GRAYSCALE piksel formatı (YUV422’den Y). Her piksel 8 bittir.

csi.RGB565: int

RGB565 piksel formatı. Her piksel 16 bittir (5 bit kırmızı, 6 bit yeşil, 5 bit mavi).

csi.BAYER: int

RAW BAYER görüntü piksel formatı.

csi.YUV422: int

YUV422 piksel formatı. Her piksel, iki Y değeri arasında paylaşılan dönüşümlü 8 bitlik U/V renk değerlerinin (Y1, U, Y2, V, …) izlediği gri tonlamalı 8 bitlik bir Y değeri olarak depolanır. Yalnızca bazı görüntü işleme yöntemleri YUV422 ile çalışır.

csi.JPEG: int

JPEG modu. Kamera modülü sıkıştırılmış JPEG görüntüleri çıkarır. JPEG kalitesini kontrol etmek için CSI.quality kullanın. Yalnızca OV2640/OV5640 kameraları için çalışır.

csi.OV2640: int

CSI.cid OV2640 kamerası için bunu döndürür.

csi.OV5640: int

CSI.cid OV5640 kamerası için bunu döndürür.

csi.OV7670: int

CSI.cid OV7670 kamerası için bunu döndürür.

csi.OV7690: int

CSI.cid OV7690 kamerası için bunu döndürür.

csi.OV7725: int

CSI.cid OV7725 kamerası için bunu döndürür.

csi.OV9650: int

CSI.cid OV9650 kamerası için bunu döndürür.

csi.MT9V022: int

CSI.cid MT9V022 kamerası için bunu döndürür.

csi.MT9V024: int

CSI.cid MT9V024 kamerası için bunu döndürür.

csi.MT9V032: int

CSI.cid MT9V032 kamerası için bunu döndürür.

csi.MT9V034: int

CSI.cid MT9V034 kamerası için bunu döndürür.

csi.MT9M114: int

CSI.cid MT9M114 kamerası için bunu döndürür.

csi.BOSON320: int

CSI.cid BOSON 320x256 kamerası için bunu döndürür.

csi.BOSON640: int

CSI.cid BOSON 640x512 kamerası için bunu döndürür.

csi.LEPTON: int

CSI.cid LEPTON1/2/3 kameraları için bunu döndürür.

csi.HM01B0: int

CSI.cid HM01B0 kamerası için bunu döndürür.

csi.HM0360: int

CSI.cid HM0360 kamerası için bunu döndürür.

csi.GC2145: int

CSI.cid GC2145 kamerası için bunu döndürür.

csi.GENX320ES: int

CSI.cid GENX320 (mühendislik örneği) kamerası için bunu döndürür.

csi.GENX320: int

CSI.cid GENX320 kamerası için bunu döndürür.

csi.PAG7920: int

CSI.cid PAG7920 kamerası için bunu döndürür.

csi.PAG7936: int

CSI.cid PAG7936 kamerası için bunu döndürür.

csi.PAJ6100: int

CSI.cid PAJ6100 kamerası için bunu döndürür.

csi.FROGEYE2020: int

CSI.cid FROGEYE2020 kamerası için bunu döndürür.

csi.SOFTCSI: int

CSI.cid yazılım CSI kamerası için bunu döndürür.

csi.NORMAL: int

CSI.special_effect için Normal modu.

csi.NEGATIVE: int

CSI.special_effect için Negatif modu.

csi.QCIF: int

Kamera sensörü için 176x144 çözünürlük.

csi.CIF: int

Kamera sensörü için 352x288 çözünürlük.

csi.QSIF: int

Kamera sensörü için 176x120 çözünürlük.

csi.SIF: int

Kamera sensörü için 352x240 çözünürlük.

csi.QQQVGA: int

Kamera sensörü için 80x60 çözünürlük.

csi.QQVGA: int

Kamera sensörü için 160x120 çözünürlük.

csi.QVGA: int

Kamera sensörü için 320x240 çözünürlük.

csi.VGA: int

Kamera sensörü için 640x480 çözünürlük.

csi.HQVGA: int

Kamera sensörü için 240x160 çözünürlük.

csi.HVGA: int

Kamera sensörü için 480x320 çözünürlük.

csi.WVGA: int

MT9V034 kamera sensörü için 720x480 çözünürlük.

csi.WVGA2: int

MT9V034 kamera sensörü için 752x480 çözünürlük.

csi.SVGA: int

Kamera sensörü için 800x600 çözünürlük.

csi.XGA: int

Kamera sensörü için 1024x768 çözünürlük.

csi.WXGA: int

MT9M114 kamera sensörü için 1280x768 çözünürlük.

csi.SXGA: int

Kamera sensörü için 1280x1024 çözünürlük. Yalnızca OV2640/OV5640 kameraları için çalışır.

csi.SXGAM: int

MT9M114 kamera sensörü için 1280x960 çözünürlük.

csi.UXGA: int

Kamera sensörü için 1600x1200 çözünürlük. Yalnızca OV2640/OV5640 kameraları için çalışır.

csi.HD: int

Kamera sensörü için 1280x720 çözünürlük.

csi.FHD: int

Kamera sensörü için 1920x1080 çözünürlük. Yalnızca OV5640 kamerası için çalışır.

csi.QHD: int

Kamera sensörü için 2560x1440 çözünürlük. Yalnızca OV5640 kamerası için çalışır.

csi.QXGA: int

Kamera sensörü için 2048x1536 çözünürlük. Yalnızca OV5640 kamerası için çalışır.

csi.WQXGA: int

Kamera sensörü için 2560x1600 çözünürlük. Yalnızca OV5640 kamerası için çalışır.

csi.WQXGA2: int

Kamera sensörü için 2592x1944 çözünürlük. Yalnızca OV5640 kamerası için çalışır.

csi.IOCTL_SET_READOUT_WINDOW: int

Okuma penceresini ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_GET_READOUT_WINDOW: int

Okuma penceresini alır. CSI.ioctl bölümüne bakın.

csi.IOCTL_SET_TRIGGERED_MODE: int

MT9V034 için tetiklemeli modu ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_GET_TRIGGERED_MODE: int

MT9V034 için tetiklemeli mod durumunu alır. CSI.ioctl bölümüne bakın.

csi.IOCTL_SET_FOV_WIDE: int

CSI.framesize yönteminin FPS yerine görüş alanı için optimizasyon yapmasını etkinleştirir. CSI.ioctl bölümüne bakın.

csi.IOCTL_GET_FOV_WIDE: int

CSI.framesize yönteminin FPS yerine görüş alanı için optimizasyon yapıp yapmadığını döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_TRIGGER_AUTO_FOCUS: int

OV5640 FPC kamera modülünde otomatik odaklamayı tetikler. CSI.ioctl bölümüne bakın.

csi.IOCTL_PAUSE_AUTO_FOCUS: int

OV5640 FPC kamera modülü için otomatik odaklamayı (çalışırken) duraklatır. CSI.ioctl bölümüne bakın.

csi.IOCTL_RESET_AUTO_FOCUS: int

OV5640 FPC kamera modülü için otomatik odaklamayı varsayılana sıfırlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_WAIT_ON_AUTO_FOCUS: int

OV5640 FPC kamera modülünde otomatik odaklamanın bitmesini bekler. CSI.ioctl bölümüne bakın.

csi.IOCTL_SET_NIGHT_MODE: int

Gece modunu açar veya kapatır. Pozlamayı dinamik olarak artırmak için çerçeve hızını azaltır. CSI.ioctl bölümüne bakın.

csi.IOCTL_GET_NIGHT_MODE: int

Gece modunun etkin olup olmadığını döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_WIDTH: int

FLIR Lepton görüntü çözünürlüğü genişliğini piksel cinsinden döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_HEIGHT: int

FLIR Lepton görüntü çözünürlüğü yüksekliğini piksel cinsinden döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_RADIOMETRY: int

FLIR Lepton türünü (radyometrik olup olmadığını) döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_REFRESH: int

FLIR Lepton yenileme hızını Hz cinsinden döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_RESOLUTION: int

FLIR Lepton ADC çözünürlüğünü bit cinsinden döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_RUN_COMMAND: int

FLIR Lepton SDK’sından 16 bitlik bir komut yürütür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_SET_ATTRIBUTE: int

FLIR Lepton SDK’sından bir FLIR Lepton özniteliğini ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_ATTRIBUTE: int

FLIR Lepton SDK’sından bir FLIR Lepton özniteliğini alır. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_FPA_TEMP: int

FLIR Lepton FPA sıcaklığını Santigrat cinsinden alır. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_AUX_TEMP: int

FLIR Lepton AUX sıcaklığını Santigrat cinsinden alır. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_SET_MODE: int

FLIR Lepton sürücüsünü her pikselin bir sıcaklık değeri olduğu bir moda ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_MODE: int

FLIR Lepton sensörü için ölçüm modunun etkin olup olmadığını döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_SET_RANGE: int

Ölçüm modunda piksel değerlerine eşlenen sıcaklık aralığını ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_LEPTON_GET_RANGE: int

Ölçüm modu için kullanılan sıcaklık aralığını döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_HIMAX_MD_ENABLE: int

HM01B0’daki hareket tespiti kesmesini kontrol eder. CSI.ioctl bölümüne bakın.

csi.IOCTL_HIMAX_MD_WINDOW: int

HM01B0’daki hareket tespiti penceresini ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_HIMAX_MD_THRESHOLD: int

HM01B0’daki hareket tespiti eşiğini ayarlar. CSI.ioctl bölümüne bakın.

csi.IOCTL_HIMAX_MD_CLEAR: int

HM01B0’daki hareket tespiti kesmesini temizler. CSI.ioctl bölümüne bakın.

csi.IOCTL_HIMAX_OSC_ENABLE: int

HM01B0’daki dahili osilatörü kontrol eder. CSI.ioctl bölümüne bakın.

csi.IOCTL_GET_RGB_STATS: int

Kamera sensöründen RGB istatistiklerini döndürür. CSI.ioctl bölümüne bakın.

csi.IOCTL_GENX320_SET_BIASES: int

GENX320 sensör bias’larını GENX320_BIASES_* ön ayarlarından birine ayarlar. CSI.ioctl bölümüne bakın. CSI.reset sonrasında sürücü csi.GENX320_BIASES_DEFAULT değil csi.GENX320_BIASES_LOW_NOISE uygular — uygulama daha fazla hassasiyet veya bant genişliği gerektirdiğinde farklı bir ön ayara geçmek için bu ioctl’yi kullanın.

csi.GENX320_BIASES_DEFAULT: int

GenX320 veri sayfası varsayılanları — genel sahneler için dengeli hassasiyet, gürültü ve bant genişliği.

csi.GENX320_BIASES_LOW_LIGHT: int

Düşük ışık koşulları için ayarlanmıştır — daha yüksek hassasiyet için her iki kontrast eşiği gevşetilmiş, FO düşürülmüş, yavaş parlaklık değişiklikleri yine de kaydedilsin diye HPF devre dışı bırakılmıştır.

csi.GENX320_BIASES_ACTIVE_MARKER: int

Yüksek kontrastlı yanıp sönen LED’leri (aktif işaretçiler) izlemek için ayarlanmıştır — yalnızca keskin geçişlerin tetiklemesi için kontrast eşikleri yükseltilmiş, bant genişliğini en üst düzeye çıkarmak ve yavaş ortam kaymasını reddetmek için FO ve HPF yüksek tutulmuş, her yanıp sönme kenarı yakalansın diye REFR=0 ayarlanmıştır.

csi.GENX320_BIASES_LOW_NOISE: int

Sürücü varsayılanı — DEFAULT değerine göre daha düşük hassasiyet (yükseltilmiş kontrast eşikleri) ve daha az arka plan gürültüsü etkinliği için daha düşük bir FO. Yanlış olayların baskın olacağı statik veya yavaş sahneler için en iyisidir.

csi.GENX320_BIASES_HIGH_SPEED: int

Hızlı hareketli sahneler için ayarlanmıştır — daha geniş piksel bant genişliği için daha yüksek FO, yavaş değişiklikleri reddetmek için daha yüksek HPF, her olaydan sonra okumanın doygunluğa ulaşmaması için daha uzun bir ölü süre sağlamak amacıyla daha yüksek REFR.

csi.IOCTL_GENX320_SET_BIAS: int

Tek bir GENX320 sensör bias’ını bir DAC değerine ayarlar. Bir GENX320_BIAS_* sabiti (csi.GENX320_BIAS_DIFF_OFF, csi.GENX320_BIAS_DIFF_ON, csi.GENX320_BIAS_FO, csi.GENX320_BIAS_HPF veya csi.GENX320_BIAS_REFR) ve bir tamsayı DAC değeri geçirin. Her bias bağımsızdır — bir ön ayar uyguladıktan sonra yalnızca ihtiyaç duyduğunuz bias’ları ince ayarlamak için bu ioctl’yi tekrar tekrar çağırın. CSI.ioctl bölümüne bakın.

csi.GENX320_BIAS_DIFF_OFF: int

Negatif karşılaştırıcı kontrast eşiği — bir csi.PIX_OFF_EVENT tetiklenmeden önce bir pikselin ne kadar kararması gerektiğini kontrol eder. Daha düşük değer = daha hassas (daha fazla olay).

csi.GENX320_BIAS_DIFF_ON: int

Pozitif karşılaştırıcı kontrast eşiği — bir csi.PIX_ON_EVENT tetiklenmeden önce bir pikselin ne kadar parlaklaşması gerektiğini kontrol eder. Daha düşük değer = daha hassas (daha fazla olay).

csi.GENX320_BIAS_FO: int

Piksel alçak geçiren kesme frekansı — piksel bant genişliğini (hız/gecikme) arka plan gürültüsü etkinliğine karşı dengeler. Daha yüksek değer = daha hızlı piksel tepkisi, daha fazla gürültü.

csi.GENX320_BIAS_HPF: int

Piksel yüksek geçiren kesme frekansı — yavaş parlaklık değişikliklerini reddeder. Daha yüksek değer = daha yavaş değişiklikler filtrelenir (yalnızca hızlı geçişler kaydedilir).

csi.GENX320_BIAS_REFR: int

Piksel refrakter periyodu — bir piksel bir olay yaydıktan sonra tekrar tetiklenemeyeceği ölü süre. Daha yüksek değer = daha uzun ölü süre, meşgul bir pikselden daha az olay.

csi.IOCTL_GENX320_SET_AFK: int

GENX320 titreşim önleyici (AFK) filtresini ayarlar; bu filtre, periyodik bir frekans bandında değişen piksellerden gelen olayları reddeder (floresan aydınlatma, LED tahrikli ekranlar vb.). enable (etkinleştirmek için 1, devre dışı bırakmak için 0) ve etkinleştirirken bant kenarlarını hertz cinsinden geçirin: (enable, freq_low_hz, freq_high_hz). CSI.ioctl bölümüne bakın.

csi.IOCTL_GENX320_SET_STC: int

GENX320 uzamsal-zamansal kontrast (STC) filtre modunu ayarlar. Bir GENX320_STC_* sabiti (csi.GENX320_STC_DISABLE, csi.GENX320_STC_ONLY, csi.GENX320_STC_TRAIL_ONLY, csi.GENX320_STC_TRAIL) ve ardından modun gerektirdiği eşik(ler)i (milisaniye cinsinden) geçirin. CSI.ioctl bölümüne bakın.

csi.GENX320_STC_DISABLE: int

GENX320 STC/iz filtresini devre dışı bırakır — her olay geçer.

csi.GENX320_STC_ONLY: int

Bir burst’ün ikinci olayını tutar; ilk olayı ve sonraki olayları atar. Bir parametre alır, milisaniye cinsinden stc_threshold — aynı pikselde önceki bir olayın o penceresi içindeki olaylar aynı burst’ün parçası olarak kabul edilir.

csi.GENX320_STC_TRAIL_ONLY: int

Bir burst’ün ilk olayını tutar; trail_threshold geçene kadar aynı pikseldeki sonraki olayları atar. Bir parametre alır, milisaniye cinsinden trail_threshold.

csi.GENX320_STC_TRAIL: int

Bir burst’ün ilk olayını ve sonraki kenarları tutarcsi.GENX320_STC_ONLY ve csi.GENX320_STC_TRAIL_ONLY özelliklerini birleştirir. İki parametre alır, stc_threshold ve trail_threshold (her ikisi de ms); sensör ikisinin yaklaşık 13:1 oranı içinde kalmasını gerektirir.

csi.IOCTL_GENX320_SET_MODE: int

GENX320 çalışma modunu ayarlar. Çip üzerindeki olay histogramı için csi.GENX320_MODE_HISTO (kamera yapılandırılmış çerçeve hızında normal bir gri tonlamalı kamera gibi davranır) veya ham olay akışı için csi.GENX320_MODE_EVENT ve ardından olay ndarray‘inin satır ekseni uzunluğunu (1024 ile 65536 arasında ikinin bir kuvveti) geçirin. CSI.ioctl bölümüne bakın.

csi.GENX320_MODE_HISTO: int

Histogram modu — olaylar çip üzerinde piksel başına gözlere biriktirilir ve yapılandırılmış hızda (~20-350 FPS) 320x320 gri tonlamalı bir çerçeve olarak raporlanır. Kamera normal bir kamera gibi göründüğünden, tüm standart görüntü işleme rutinleri doğrudan çalışır.

csi.GENX320_MODE_EVENT: int

Olay modu — çip üzerindeki histogramı atlar ve önceden gözelere bölünmüş bir çerçeve yerine tam zamansal ayrıntıya ihtiyaç duyan uygulamalar için ham olayları mikrosaniye zaman damgalarıyla bir numpy ndarray‘ine akıtır.

csi.IOCTL_GENX320_READ_EVENTS: int

Ham olayları (EVT_res, 6) şeklinde bir uint16 ndarray içine okur (EVT_res, csi.IOCTL_GENX320_SET_MODE çağrısına geçirilen arabellek boyutuyla eşleşir). Sütunlar şunlardır: [0] olay türü (csi.PIX_OFF_EVENT, csi.PIX_ON_EVENT, csi.EXT_TRIGGER_RISING/FALLING, csi.RST_TRIGGER_RISING/FALLING), [1] saniye zaman damgası, [2] milisaniye, [3] mikrosaniye, [4] X koordinatı (0-319), [5] Y koordinatı (0-319). Arabelleğe yazılan olay sayısını döndürür ve bu sayının ötesindeki eski satırlara dokunmaz. CSI.ioctl bölümüne bakın.

csi.IOCTL_GENX320_CALIBRATE: int

Sıcak pikselleri otomatik olarak devre dışı bırakır — statik bir sahnede bile sahte tetiklenen pikseller. Sürücü 320x320 piksel başına bir isabet sayımı oluşturur, ortalamayı ve standart sapmayı hesaplar ve sayımı mean + sigma * stddev değerini aşan her pikseli devre dışı bırakır. Bir olay sayısı bütçesi (istatistikler hesaplanmadan önce sayılacak olaylar — yüksek = daha güvenilir tahmin, daha yavaş; ~10000 iyi bir varsayılandır) ve bir sigma float’ı (düşük = daha agresif, ~0.5 varsayılan) geçirin. Devre dışı bırakılan piksellerin sayısını döndürür. Hareket kaynaklı olayların aslında sorunsuz olan piksellere karşı sayılmaması için önce kamerayı statik bir sahneye yöneltin. CSI.ioctl bölümüne bakın.

csi.IOCTL_GENX320_READ_EVENTS_RAW: int

GENX320’den olayların hâlâ çipin yerel paketlenmiş kodlamasında olduğu ham bir olay çerçevesi image.Image döndürür — ham akışı kamera üzerinde işlemek yerine çevrimdışı çözme için bir bilgisayara iletmek istiyorsanız kullanışlıdır. CSI.ioctl bölümüne bakın.

csi.PIX_OFF_EVENT: int

GENX320 olay türü (sütun [0]) — bir piksel bir parlaklık azalması tespit etti (negatif kontrast eşiği aşıldı). Sütun [4]/[5] pikselin X/Y değerini taşır.

csi.PIX_ON_EVENT: int

GENX320 olay türü (sütun [0]) — bir piksel bir parlaklık artışı tespit etti (pozitif kontrast eşiği aşıldı). Sütun [4]/[5] pikselin X/Y değerini taşır.

csi.RST_TRIGGER_RISING: int

GENX320 olay türü (sütun [0]) — piksel sıfırlama tetikleyicisi, yükselen kenar. X/Y kullanılmaz. Şu anda aygıt yazılımı tarafından oluşturulmaz.

csi.RST_TRIGGER_FALLING: int

GENX320 olay türü (sütun [0]) — piksel sıfırlama tetikleyicisi, düşen kenar. X/Y kullanılmaz. Şu anda aygıt yazılımı tarafından oluşturulmaz.

csi.EXT_TRIGGER_RISING: int

GENX320 olay türü (sütun [0]) — sensörün harici tetikleyici pini bir yükselen kenar gördü. GENX320’nin harici tetikleyici girişi, kameranın çerçeve senkronizasyon hattına bağlıdır ve aynı zamanda işlemcideki P10 pinine ve pin başlığına yönlendirilir. X/Y kullanılmaz.

csi.EXT_TRIGGER_FALLING: int

GENX320 olay türü (sütun [0]) — sensörün harici tetikleyici pini bir düşen kenar gördü. GENX320’nin harici tetikleyici girişi, kameranın çerçeve senkronizasyon hattına bağlıdır ve aynı zamanda işlemcideki P10 pinine ve pin başlığına yönlendirilir. X/Y kullanılmaz.