csi --- cảm biến camera

Module csi là giao diện hướng đối tượng hiện đại để giao tiếp với (các) cảm biến camera trên OpenMV Cam. Mỗi cảm biến vật lý được đại diện bởi một thể hiện CSI, vì vậy các bo mạch hình ảnh đa phổ kết hợp cảm biến màu sắc với cảm biến nhiệt hoặc cảm biến sự kiện có thể điều khiển từng cảm biến độc lập bằng cách truyền cid khác nhau vào hàm khởi tạo. Các cam có một cảm biến chỉ cần khởi tạo một CSI.

Một đối tượng CSI sở hữu toàn bộ cấu hình cảm biến -- định dạng điểm ảnh, kích thước khung hình / cửa sổ, thời gian phơi sáng / độ khuếch đại / cân bằng trắng, gương ngang và lật dọc phần cứng, mẫu thử thanh màu sắc, đồng hồ tốc độ khung hình, vùng quan tâm (ROI) cho phơi sáng tự động, và các lệnh ioctl riêng cho chip. Các khung hình được chụp bằng CSI.snapshot(), trả về một đối tượng image.Image được hỗ trợ bởi bộ đệm khung hình.

Module này thay thế module kế thừa sensor (vốn cung cấp cùng chức năng nhưng dưới dạng các hàm cấp module gắn với một cảm biến ẩn duy nhất). Code mới nên sử dụng CSI.

Ví dụ sử dụng:

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()

Sử dụng Asyncio

Vòng lặp CSI.snapshot() chặn ở trên không hợp tác với vòng lặp sự kiện asyncio -- trong khi snapshot đang chờ khung hình tiếp theo, mọi coroutine khác trong chương trình đều bị đóng băng. Để cho vòng lặp chụp ảnh cùng tồn tại với các công việc đồng thời khác (một UART client, một bộ theo dõi nút nhấn, một tác vụ mạng), hãy bọc CSI trong một bộ điều hợp nhỏ biến snapshot thành một coroutine thân thiện với await bằng cách thăm dò snapshot(blocking=False) và nhường quyền cho vòng lặp sự kiện giữa các lần kiểm tra:

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__ chuyển tiếp mọi thuộc tính khác (reset, pixformat, framesize, các nút chỉnh cảm biến) đến CSI bên dưới, vì vậy wrapper có thể thay thế trực tiếp. Lần gọi không chặn đầu tiên cũng khởi động quá trình chụp DMA của camera nếu nó chưa chạy, vì vậy không cần khởi động thêm.

Một vòng lặp chụp ảnh sau đó có thể tích hợp vào một chương trình asyncio lớn hơn như một coroutine thông thường:

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())

Cài đặt framebuffers vẫn quan trọng trong trường hợp này -- chế độ đơn bộ đệm khiến snapshot(blocking=False) trả về None cho đến khi khung hình tiếp theo được chụp, trong khi bộ đệm đôi hoặc ba làm giảm điều đó để wrapper thường tìm thấy một khung hình đệm đang chờ ở lần thăm dò đầu tiên. Xem phần hướng dẫn AsyncCSI trong hướng dẫn asyncio để có hướng dẫn đầy đủ.

class CSI -- Giao diện cảm biến camera

Lớp CSI được dùng để điều khiển một cảm biến camera.

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

Tạo một đối tượng để giao tiếp với cảm biến camera. Trên các bo mạch có nhiều cảm biến, có thể chọn đối tượng CSI cụ thể bằng cách truyền cid như csi.LEPTON để chọn module cảm biến FLIR Lepton. Nếu cid là -1, cảm biến chính sẽ được chọn (thường là module camera màu trên các bo mạch đa cảm biến).

Nếu delaysFalse thì tất cả các độ trễ ổn định trong driver csi sẽ bị vô hiệu hóa. Theo mặc định, driver cảm biến sẽ trì hoãn sau khi reset / thay đổi chế độ để ngăn CSI.snapshot trả về các khung hình bị hỏng. Vô hiệu hóa độ trễ cho phép bạn gộp các cập nhật và áp dụng một độ trễ duy nhất vào cuối trước khi gọi CSI.snapshot.

Nếu fflushFalse thì tính năng xả bộ đệm khung hình tự động được đề cập trong CSI.framebuffers sẽ bị vô hiệu hóa. Điều này loại bỏ mọi giới hạn thời gian đối với các khung hình trong hàng đợi bộ đệm khung hình.

stream chọn xem CSI này có phải là nguồn stream được gửi đến IDE hay không. Nếu là None (mặc định), CSI sẽ trở thành nguồn stream chỉ khi nó là cảm biến chính (không phải phụ). Truyền True để buộc CSI này trở thành nguồn stream, hoặc bất kỳ giá trị false nào để giữ nguyên nguồn stream hiện tại.

Phương thức

reset(hard: bool = True) None

Khởi tạo cảm biến camera. Thực hiện reset phần cứng bằng cách bật tắt GPIO tín hiệu RESET đến module camera nếu hardTrue. hard nên được đặt thành false khi reset các cảm biến camera phụ chia sẻ cùng GPIO tín hiệu RESET với module chính.

shutdown(enable: bool) None

Đưa camera vào chế độ tiết kiệm điện năng thấp hơn sleep (nhưng camera phải được reset khi được đánh thức).

sleep(enable: bool) None

Đưa camera vào chế độ ngủ nếu enable là True. Ngược lại, đánh thức lại.

flush() None

Sao chép nội dung bộ đệm khung hình hiện tại vào bản xem trước IDE. Gọi hàm này sau lần CSI.snapshot cuối cùng nếu tập lệnh kết thúc để IDE hiển thị khung hình cuối cùng.

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

Chụp ảnh bằng camera và trả về đối tượng image.Image.

Nếu time và/hoặc frames được truyền, snapshot sẽ chặn trong số time mili giây và/hoặc số frames được chụp từ camera. Cả hai đối số có thể được sử dụng cùng lúc. Sau khi time và/hoặc frames đã trôi qua, snapshot sẽ trả về None.

blocking có thể là False để kích hoạt hành vi không chặn, khiến snapshot trả về None khi ảnh tiếp theo từ camera chưa sẵn sàng thay vì chờ.

image có thể là một đối tượng image.Image khác để cập nhật với ảnh mới được chụp từ camera thay vì trả về đối tượng image.Image mới. Nội dung ảnh trước đó bị ghi đè thông qua sao chép sâu.

Nếu CSI.auto_rotation được bật, phương thức này sẽ trả về một image.Image đã được xoay sẵn.

width() int

Trả về chiều rộng độ phân giải của cảm biến.

height() int

Trả về chiều cao độ phân giải của cảm biến.

cid() int

Trả về ID chip của module camera. So sánh với bất kỳ giá trị nào trong 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, hoặc csi.SOFTCSI.

readable() bool

Trả về True nếu có một ảnh sẵn sàng được trả về bởi CSI.snapshot, nghĩa là lần gọi snapshot sẽ không chặn.

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

Đặt định dạng điểm ảnh cho module camera thành một trong csi.GRAYSCALE, csi.RGB565, csi.BAYER, csi.YUV422, hoặc csi.JPEG (chỉ trên OV2640/OV5640).

Trả về định dạng điểm ảnh hiện tại nếu được gọi không có đối số.

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

Đặt kích thước khung hình cho module camera thành một trong các hằng số kích thước (ví dụ: csi.QVGA, csi.VGA, csi.HD, v.v. --- xem phần hằng số).

Ngoài ra, bạn có thể truyền kích thước khung hình tùy chỉnh dưới dạng tuple (w, h). Khi CSI.snapshot được gọi, kích thước khung hình tùy chỉnh sẽ được đánh giá theo các quy tắc DMA. Nhìn chung, kích thước khung hình cần là bội số của 8 điểm ảnh và/hoặc 16 byte.

Trả về kích thước khung hình hiện tại nếu được gọi không có đối số.

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

Đặt tốc độ khung hình tính bằng Hz cho module camera.

Trả về tốc độ khung hình hiện tại nếu được gọi không có đối số.

Ghi chú

CSI.framerate hoạt động bằng cách bỏ qua các khung hình nhận từ module camera để giữ tốc độ khung hình ở mức hoặc dưới mức đã chỉ định. Theo mặc định, camera sẽ chạy ở tốc độ khung hình tối đa. Nếu được triển khai cho cảm biến camera cụ thể, CSI.framerate cũng sẽ giảm tốc độ khung hình nội bộ của cảm biến camera để tiết kiệm điện và cải thiện chất lượng ảnh bằng cách tăng thời gian phơi sáng của cảm biến. CSI.framerate có thể xung đột với CSI.auto_exposure trên một số camera.

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

Đặt độ phân giải của camera thành vùng con của độ phân giải hiện tại. roi là tuple (x, y, w, h). Bạn cũng có thể truyền (w, h) và cửa sổ sẽ được căn giữa.

Trả về tuple (x, y, w, h) hiện tại nếu được gọi không có đối số.

gainceiling(gainceiling: int) bool

Đặt trần độ khuếch đại của ảnh camera thành một trong 2, 4, 8, 16, 32, 64, hoặc 128.

Trả về True khi thành công và False khi thất bại.

brightness(brightness: int) bool

Đặt độ sáng ảnh của camera.

Trả về True khi thành công và False khi thất bại.

contrast(contrast: int) bool

Đặt độ tương phản ảnh của camera.

Trả về True khi thành công và False khi thất bại.

saturation(saturation: int) bool

Đặt độ bão hòa màu sắc ảnh của camera.

Trả về True khi thành công và False khi thất bại.

quality(quality: int) bool

Đặt chất lượng nén JPEG của ảnh camera. 0 - 100.

Trả về True khi thành công và False khi thất bại.

Ghi chú

Chỉ dành cho camera OV2640/OV5640.

colorbar(enable: bool) bool

Bật (True) hoặc tắt (False) chế độ thanh màu. Mặc định là tắt.

Trả về True khi thành công và False khi thất bại.

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

enable bật (True) hoặc tắt (False) điều khiển độ khuếch đại tự động. Camera khởi động với điều khiển độ khuếch đại tự động được bật.

Nếu enableFalse, bạn có thể đặt độ khuếch đại cố định tính bằng decibel với gain_db.

Nếu enableTrue, bạn có thể đặt trần độ khuếch đại tối đa tính bằng decibel với gain_db_ceiling cho thuật toán điều khiển độ khuếch đại tự động.

Ghi chú

Bạn cũng cần tắt cân bằng trắng nếu muốn theo dõi màu sắc.

gain_db() float

Trả về giá trị độ khuếch đại camera hiện tại tính bằng decibel.

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

enable bật (True) hoặc tắt (False) điều khiển phơi sáng tự động. Camera khởi động với điều khiển phơi sáng tự động được bật.

Nếu enableFalse, bạn có thể đặt thời gian phơi sáng cố định tính bằng micro giây với exposure_us.

Ghi chú

Các thuật toán phơi sáng tự động của camera khá thận trọng về mức độ điều chỉnh giá trị phơi sáng và thường tránh thay đổi giá trị phơi sáng nhiều. Thay vào đó, chúng thay đổi giá trị độ khuếch đại nhiều để đối phó với điều kiện ánh sáng thay đổi.

exposure_us() int

Trả về giá trị phơi sáng camera hiện tại tính bằng micro giây.

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

enable bật (True) hoặc tắt (False) cân bằng trắng tự động. Camera khởi động với cân bằng trắng tự động được bật.

Nếu enableFalse, bạn có thể đặt độ khuếch đại cố định tính bằng decibel cho các kênh đỏ, xanh lá và xanh dương tương ứng với rgb_gain_db.

Ghi chú

Bạn cũng cần tắt điều khiển độ khuếch đại nếu muốn theo dõi màu sắc.

rgb_gain_db() Tuple[float, float, float]

Trả về tuple (r, g, b) của các giá trị độ khuếch đại đỏ, xanh lá và xanh dương hiện tại của camera tính bằng decibel.

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

Đặt hiệu chỉnh mức đen tự động (BLC) trên camera.

enable truyền True hoặc False để bật hoặc tắt BLC. Thông thường bạn luôn muốn bật tính năng này.

regs nếu bị vô hiệu hóa thì bạn có thể đặt thủ công các giá trị thanh ghi BLC từ lần gọi trước đó đến CSI.blc_regs.

blc_regs() List[int]

Trả về các thanh ghi BLC của cảm biến dưới dạng danh sách số nguyên. Dùng với CSI.auto_blc.

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

Bật (True) hoặc tắt (False) chế độ gương ngang. Mặc định là tắt.

Trả về cài đặt hiện tại nếu được gọi không có đối số.

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

Bật (True) hoặc tắt (False) chế độ lật dọc. Mặc định là tắt.

Trả về cài đặt hiện tại nếu được gọi không có đối số.

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

Bật (True) hoặc tắt (False) chế độ hoán vị. Mặc định là tắt.

  • vflip=False, hmirror=False, transpose=False -> xoay 0 độ

  • vflip=True, hmirror=False, transpose=True -> xoay 90 độ

  • vflip=True, hmirror=True, transpose=False -> xoay 180 độ

  • vflip=False, hmirror=True, transpose=True -> xoay 270 độ

Trả về cài đặt hiện tại nếu được gọi không có đối số.

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

Bật (True) hoặc tắt (False) chế độ xoay tự động. Mặc định là tắt.

Trả về cài đặt hiện tại nếu được gọi không có đối số.

Ghi chú

Phương thức này chỉ hoạt động khi OpenMV Cam có imu được cài đặt và được bật tự động.

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

Đặt số lượng bộ đệm khung hình được sử dụng để nhận dữ liệu ảnh. Theo mặc định, OpenMV Cam sẽ cố gắng phân bổ số lượng bộ đệm khung hình tối đa có thể. Việc tái phân bổ xảy ra mỗi khi CSI.pixformat, CSI.framesize, hoặc CSI.window được gọi.

count bằng 1 (đơn bộ đệm), 2 (đôi bộ đệm), hoặc 3 (ba bộ đệm) chọn chế độ chụp tương ứng. Truyền 4 hoặc lớn hơn để đưa driver vào chế độ FIFO video nơi count bộ đệm được xếp hàng --- hữu ích cho việc ghi video vào thẻ SD. Khi mất khung hình, tất cả các bộ đệm khung hình ngoại trừ bộ đệm đang hoạt động đều được xóa để CSI.snapshot luôn trả về khung hình gần nhất.

Trả về số lượng hiện tại nếu được gọi không có đối số.

special_effect(effect: int) bool

Đặt hiệu ứng kỹ thuật số đặc biệt (một trong csi.NORMAL hoặc csi.NEGATIVE).

Trả về True khi thành công và False khi thất bại.

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

enable True để bật, False để tắt. radi bán kính số nguyên của các điểm ảnh cần hiệu chỉnh. coef hệ số hiệu chỉnh.

Trả về True khi thành công và False khi thất bại.

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

Đăng ký hàm gọi lại cb để được thực thi (trong ngữ cảnh ngắt) bất cứ khi nào module camera tạo ra một khung hình mới (nhưng trước khi khung hình được nhận).

cb nhận một đối số và được truyền trạng thái hiện tại của chân vsync sau khi thay đổi.

Trả về hàm gọi lại đã đăng ký nếu được gọi không có đối số. Truyền bất kỳ giá trị không thể gọi nào để xóa hàm gọi lại.

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

Đăng ký hàm gọi lại cb để được thực thi (trong ngữ cảnh ngắt) bất cứ khi nào module camera tạo ra một khung hình mới và khung hình đó sẵn sàng được đọc qua CSI.snapshot.

cb không nhận đối số. Dùng hàm này để lên lịch đọc khung hình sau với micropython.schedule().

Trả về hàm gọi lại đã đăng ký nếu được gọi không có đối số. Truyền bất kỳ giá trị không thể gọi nào để xóa hàm gọi lại.

ioctl(request: int, *args) Any

Thực thi một yêu cầu đặc thù của cảm biến. request là một trong các hằng số IOCTL_*; các đối số vị trí còn lại và giá trị trả về phụ thuộc vào yêu cầu. Các yêu cầu được hỗ trợ được nhóm theo dòng cảm biến bên dưới.

Chung (mọi cảm biến):

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

ioctl(IOCTL_SET_READOUT_WINDOW, (w, h))

Đặt cửa sổ đọc của cảm biến. Cửa sổ nhỏ hơn làm tăng tốc độ khung hình nhưng giảm trường nhìn.

ioctl(IOCTL_GET_READOUT_WINDOW)

Trả về cửa sổ đọc hiện tại dưới dạng tuple (x, y, w, h).

ioctl(IOCTL_SET_TRIGGERED_MODE, enable)

Bật (True) hoặc tắt (False) chế độ kích hoạt trên MT9V034.

ioctl(IOCTL_GET_TRIGGERED_MODE)

Trả về trạng thái chế độ kích hoạt hiện tại dưới dạng bool.

ioctl(IOCTL_SET_FOV_WIDE, enable)

Khi là True, hướng dẫn framesize() tối ưu hóa cho trường nhìn thay vì tốc độ khung hình.

ioctl(IOCTL_GET_FOV_WIDE)

Trả về trạng thái FOV rộng hiện tại dưới dạng bool.

ioctl(IOCTL_SET_NIGHT_MODE, enable)

Bật (True) hoặc tắt (False) "chế độ ban đêm" ánh sáng thấp của cảm biến. Chỉ dành cho OV7725 và OV5640.

ioctl(IOCTL_GET_NIGHT_MODE)

Trả về trạng thái chế độ ban đêm hiện tại dưới dạng bool.

ioctl(IOCTL_GET_RGB_STATS)

Trả về 4-tuple các thống kê kênh RGB thô (r, gb, gr, b) được đọc từ cảm biến (thường được dùng để chỉnh cân bằng trắng).

OV5640 FPC -- lấy nét tự động:

ioctl(IOCTL_TRIGGER_AUTO_FOCUS)

Bắt đầu quét lấy nét tự động trên module OV5640 FPC.

ioctl(IOCTL_PAUSE_AUTO_FOCUS)

Tạm dừng quét lấy nét tự động đang diễn ra.

ioctl(IOCTL_RESET_AUTO_FOCUS)

Đặt lại vị trí lấy nét tự động về mặc định.

ioctl(IOCTL_WAIT_ON_AUTO_FOCUS)

ioctl(IOCTL_WAIT_ON_AUTO_FOCUS, timeout_ms)

Chặn cho đến khi quét lấy nét tự động hiện tại hoàn thành. timeout_ms mặc định là 5000 nếu bị bỏ qua.

FLIR Lepton:

ioctl(IOCTL_LEPTON_GET_WIDTH)

Trả về chiều rộng ảnh Lepton tính bằng điểm ảnh.

ioctl(IOCTL_LEPTON_GET_HEIGHT)

Trả về chiều cao ảnh Lepton tính bằng điểm ảnh.

ioctl(IOCTL_LEPTON_GET_RADIOMETRY)

Trả về loại Lepton (đo bức xạ hay không) dưới dạng int.

ioctl(IOCTL_LEPTON_GET_REFRESH)

Trả về tốc độ làm mới của Lepton tính bằng Hz.

ioctl(IOCTL_LEPTON_GET_RESOLUTION)

Trả về độ phân giải ADC của Lepton tính bằng bit.

ioctl(IOCTL_LEPTON_RUN_COMMAND, cmd)

Chạy lệnh FLIR Lepton SDK. cmd là id lệnh 16-bit được định nghĩa bởi SDK.

ioctl(IOCTL_LEPTON_SET_ATTRIBUTE, attr_id, payload)

Ghi một thuộc tính Lepton SDK. attr_id là id thuộc tính 16-bit; payloadbytes/bytearray có độ dài phải là bội số của 16 bit.

ioctl(IOCTL_LEPTON_GET_ATTRIBUTE, attr_id, words)

Đọc một thuộc tính Lepton SDK. attr_id là id thuộc tính 16-bit; words là số từ 16-bit cần đọc. Trả về bytearray.

ioctl(IOCTL_LEPTON_GET_FPA_TEMP)

Trả về nhiệt độ mảng phẳng tiêu cự (FPA) của Lepton tính bằng độ Celsius.

ioctl(IOCTL_LEPTON_GET_AUX_TEMP)

Trả về nhiệt độ phụ của Lepton tính bằng độ Celsius.

ioctl(IOCTL_LEPTON_SET_MODE, measurement_enabled)

ioctl(IOCTL_LEPTON_SET_MODE, measurement_enabled, high_temp_enabled)

Chuyển đổi Lepton giữa AGC và đầu ra nhiệt độ trực tiếp. measurement_enabled=True bật đầu ra nhiệt độ trực tiếp. Cờ tùy chọn high_temp_enabled chọn dải nhiệt độ cao.

ioctl(IOCTL_LEPTON_GET_MODE)

Trả về 2-tuple (measurement_enabled, high_temp_enabled).

ioctl(IOCTL_LEPTON_SET_RANGE, (min_celsius, max_celsius))

Đặt dải nhiệt độ được ánh xạ tới 0..255 khi chế độ đo lường được bật.

ioctl(IOCTL_LEPTON_GET_RANGE)

Trả về dải (min_celsius, max_celsius) hiện tại.

Himax HM01B0 -- phát hiện chuyển động:

ioctl(IOCTL_HIMAX_MD_ENABLE, enable)

Bật (True) hoặc tắt (False) khối phát hiện chuyển động trên cảm biến của HM01B0.

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

ioctl(IOCTL_HIMAX_MD_WINDOW, (w, h))

Đặt cửa sổ phát hiện chuyển động trên HM01B0.

ioctl(IOCTL_HIMAX_MD_THRESHOLD, threshold)

Đặt ngưỡng phát hiện chuyển động (0 -- 255).

ioctl(IOCTL_HIMAX_MD_CLEAR)

Xóa chốt ngắt phát hiện chuyển động.

ioctl(IOCTL_HIMAX_OSC_ENABLE, enable)

Bật (True) hoặc tắt (False) bộ dao động nội bộ của HM01B0.

Prophesee GENX320 -- cảm biến sự kiện:

ioctl(IOCTL_GENX320_SET_BIASES, preset)

Áp dụng preset độ lệch. preset là một trong các hằng số GENX320_BIASES_*.

ioctl(IOCTL_GENX320_SET_BIAS, bias, value)

Đặt một độ lệch đơn. bias là một trong các hằng số GENX320_BIAS_*; value là giá trị nguyên.

ioctl(IOCTL_GENX320_SET_AFK, enable)

ioctl(IOCTL_GENX320_SET_AFK, enable, freq_low_hz, freq_high_hz)

Cấu hình bộ lọc chống nhấp nháy. enable là bool; các đối số tần số tùy chọn đặt dải thông của bộ lọc.

ioctl(IOCTL_GENX320_SET_STC, mode)

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

Cấu hình bộ lọc tương phản không gian-thời gian. mode là một trong các hằng số GENX320_STC_*; tối đa hai đối số tiếp theo phụ thuộc vào chế độ.

ioctl(IOCTL_GENX320_SET_MODE, mode)

ioctl(IOCTL_GENX320_SET_MODE, mode, evt_res)

Chuyển đổi cảm biến giữa chế độ khung hình và chế độ sự kiện. mode là một trong các hằng số GENX320_MODE_*. Đối với chế độ sự kiện, evt_res là độ dài trục hàng của bộ đệm sự kiện được truyền đến IOCTL_GENX320_READ_EVENTS.

ioctl(IOCTL_GENX320_READ_EVENTS, buf)

Đọc các sự kiện vào buf, một ndarray uint16 có hình dạng (EVT_res, 6) trong đó EVT_res là lũy thừa của hai từ 1024 đến 65536. Các cột là:

  • [0] -- loại sự kiện (PIX_OFF_EVENT / PIX_ON_EVENT / trigger).

  • [1] -- giây.

  • [2] -- mili giây.

  • [3] -- micro giây.

  • [4] -- tọa độ x.

  • [5] -- tọa độ y.

Trả về số lượng sự kiện đã ghi.

ioctl(IOCTL_GENX320_READ_EVENTS_RAW)

Trả về một image.Image chứa khung sự kiện thô từ GENX320.

ioctl(IOCTL_GENX320_CALIBRATE, iterations, sigma)

Tắt các điểm ảnh có nhiễu vượt quá sigma độ lệch chuẩn so với phân phối chuẩn. iterations là số nguyên lần hiệu chỉnh. Trả về số điểm ảnh bị vô hiệu hóa.

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

Đặt bảng màu để sử dụng cho các mục đích như chuyển đổi thang xám FLIR Lepton sang RGB565 hoặc trực quan hóa sự kiện GENX320. Một trong image.PALETTE_RAINBOW, image.PALETTE_IRONBOW, và (khi được hỗ trợ) image.PALETTE_DEPTH, image.PALETTE_EVT_DARK, hoặc image.PALETTE_EVT_LIGHT.

Trả về cài đặt hiện tại nếu được gọi không có đối số.

__write_reg(address: int, value: int) None

Ghi value vào thanh ghi camera tại địa chỉ address.

Ghi chú

Xem bảng dữ liệu camera để biết thông tin thanh ghi.

__read_reg(address: int) int

Đọc thanh ghi camera tại địa chỉ address.

Ghi chú

Xem bảng dữ liệu camera để biết thông tin thanh ghi.

Hàm

csi.devices() List[int]

Trả về danh sách các ID chip cảm biến được phát hiện.

Hằng số

csi.BINARY: int

Định dạng điểm ảnh BINARY (bitmap). Mỗi điểm ảnh là 1-bit. Hữu ích để lưu trữ mặt nạ; có thể dùng với image.Image().

csi.GRAYSCALE: int

Định dạng điểm ảnh GRAYSCALE (Y từ YUV422). Mỗi điểm ảnh là 8-bit.

csi.RGB565: int

Định dạng điểm ảnh RGB565. Mỗi điểm ảnh là 16-bit (5-bit đỏ, 6-bit xanh lá, 5-bit xanh dương).

csi.BAYER: int

Định dạng điểm ảnh ảnh RAW BAYER.

csi.YUV422: int

Định dạng điểm ảnh YUV422. Mỗi điểm ảnh được lưu trữ dưới dạng giá trị Y 8-bit thang xám theo sau là các giá trị màu U/V 8-bit xen kẽ được chia sẻ giữa hai giá trị Y (Y1, U, Y2, V, ...). Chỉ một số phương thức xử lý ảnh hoạt động với YUV422.

csi.JPEG: int

Chế độ JPEG. Module camera xuất ra ảnh JPEG nén. Dùng CSI.quality để kiểm soát chất lượng JPEG. Chỉ hoạt động với camera OV2640/OV5640.

csi.OV2640: int

CSI.cid trả về giá trị này cho camera OV2640.

csi.OV5640: int

CSI.cid trả về giá trị này cho camera OV5640.

csi.OV7670: int

CSI.cid trả về giá trị này cho camera OV7670.

csi.OV7690: int

CSI.cid trả về giá trị này cho camera OV7690.

csi.OV7725: int

CSI.cid trả về giá trị này cho camera OV7725.

csi.OV9650: int

CSI.cid trả về giá trị này cho camera OV9650.

csi.MT9V022: int

CSI.cid trả về giá trị này cho camera MT9V022.

csi.MT9V024: int

CSI.cid trả về giá trị này cho camera MT9V024.

csi.MT9V032: int

CSI.cid trả về giá trị này cho camera MT9V032.

csi.MT9V034: int

CSI.cid trả về giá trị này cho camera MT9V034.

csi.MT9M114: int

CSI.cid trả về giá trị này cho camera MT9M114.

csi.BOSON320: int

CSI.cid trả về giá trị này cho camera BOSON 320x256.

csi.BOSON640: int

CSI.cid trả về giá trị này cho camera BOSON 640x512.

csi.LEPTON: int

CSI.cid trả về giá trị này cho camera LEPTON1/2/3.

csi.HM01B0: int

CSI.cid trả về giá trị này cho camera HM01B0.

csi.HM0360: int

CSI.cid trả về giá trị này cho camera HM0360.

csi.GC2145: int

CSI.cid trả về giá trị này cho camera GC2145.

csi.GENX320ES: int

CSI.cid trả về giá trị này cho camera GENX320 (mẫu kỹ thuật).

csi.GENX320: int

CSI.cid trả về giá trị này cho camera GENX320.

csi.PAG7920: int

CSI.cid trả về giá trị này cho camera PAG7920.

csi.PAG7936: int

CSI.cid trả về giá trị này cho camera PAG7936.

csi.PAJ6100: int

CSI.cid trả về giá trị này cho camera PAJ6100.

csi.FROGEYE2020: int

CSI.cid trả về giá trị này cho camera FROGEYE2020.

csi.SOFTCSI: int

CSI.cid trả về giá trị này cho camera CSI phần mềm.

csi.NORMAL: int

Chế độ thông thường cho CSI.special_effect.

csi.NEGATIVE: int

Chế độ âm bản cho CSI.special_effect.

csi.QCIF: int

Độ phân giải 176x144 cho cảm biến camera.

csi.CIF: int

Độ phân giải 352x288 cho cảm biến camera.

csi.QSIF: int

Độ phân giải 176x120 cho cảm biến camera.

csi.SIF: int

Độ phân giải 352x240 cho cảm biến camera.

csi.QQQVGA: int

Độ phân giải 80x60 cho cảm biến camera.

csi.QQVGA: int

Độ phân giải 160x120 cho cảm biến camera.

csi.QVGA: int

Độ phân giải 320x240 cho cảm biến camera.

csi.VGA: int

Độ phân giải 640x480 cho cảm biến camera.

csi.HQVGA: int

Độ phân giải 240x160 cho cảm biến camera.

csi.HVGA: int

Độ phân giải 480x320 cho cảm biến camera.

csi.WVGA: int

Độ phân giải 720x480 cho cảm biến camera MT9V034.

csi.WVGA2: int

Độ phân giải 752x480 cho cảm biến camera MT9V034.

csi.SVGA: int

Độ phân giải 800x600 cho cảm biến camera.

csi.XGA: int

Độ phân giải 1024x768 cho cảm biến camera.

csi.WXGA: int

Độ phân giải 1280x768 cho cảm biến camera MT9M114.

csi.SXGA: int

Độ phân giải 1280x1024 cho cảm biến camera. Chỉ hoạt động với camera OV2640/OV5640.

csi.SXGAM: int

Độ phân giải 1280x960 cho cảm biến camera MT9M114.

csi.UXGA: int

Độ phân giải 1600x1200 cho cảm biến camera. Chỉ hoạt động với camera OV2640/OV5640.

csi.HD: int

Độ phân giải 1280x720 cho cảm biến camera.

csi.FHD: int

Độ phân giải 1920x1080 cho cảm biến camera. Chỉ hoạt động với camera OV5640.

csi.QHD: int

Độ phân giải 2560x1440 cho cảm biến camera. Chỉ hoạt động với camera OV5640.

csi.QXGA: int

Độ phân giải 2048x1536 cho cảm biến camera. Chỉ hoạt động với camera OV5640.

csi.WQXGA: int

Độ phân giải 2560x1600 cho cảm biến camera. Chỉ hoạt động với camera OV5640.

csi.WQXGA2: int

Độ phân giải 2592x1944 cho cảm biến camera. Chỉ hoạt động với camera OV5640.

csi.IOCTL_SET_READOUT_WINDOW: int

Đặt cửa sổ đọc. Xem CSI.ioctl.

csi.IOCTL_GET_READOUT_WINDOW: int

Lấy cửa sổ đọc. Xem CSI.ioctl.

csi.IOCTL_SET_TRIGGERED_MODE: int

Đặt chế độ kích hoạt cho MT9V034. Xem CSI.ioctl.

csi.IOCTL_GET_TRIGGERED_MODE: int

Lấy trạng thái chế độ kích hoạt cho MT9V034. Xem CSI.ioctl.

csi.IOCTL_SET_FOV_WIDE: int

Bật CSI.framesize để tối ưu hóa trường nhìn so với FPS. Xem CSI.ioctl.

csi.IOCTL_GET_FOV_WIDE: int

Trả về xem CSI.framesize có đang tối ưu hóa trường nhìn so với FPS hay không. Xem CSI.ioctl.

csi.IOCTL_TRIGGER_AUTO_FOCUS: int

Kích hoạt lấy nét tự động trên module camera OV5640 FPC. Xem CSI.ioctl.

csi.IOCTL_PAUSE_AUTO_FOCUS: int

Tạm dừng lấy nét tự động (khi đang chạy) cho module camera OV5640 FPC. Xem CSI.ioctl.

csi.IOCTL_RESET_AUTO_FOCUS: int

Đặt lại lấy nét tự động về mặc định cho module camera OV5640 FPC. Xem CSI.ioctl.

csi.IOCTL_WAIT_ON_AUTO_FOCUS: int

Chờ lấy nét tự động hoàn thành trên module camera OV5640 FPC. Xem CSI.ioctl.

csi.IOCTL_SET_NIGHT_MODE: int

Bật hoặc tắt chế độ ban đêm. Giảm tốc độ khung hình để tăng thời gian phơi sáng một cách động. Xem CSI.ioctl.

csi.IOCTL_GET_NIGHT_MODE: int

Trả về xem chế độ ban đêm có được bật hay không. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_WIDTH: int

Trả về chiều rộng độ phân giải ảnh FLIR Lepton tính bằng điểm ảnh. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_HEIGHT: int

Trả về chiều cao độ phân giải ảnh FLIR Lepton tính bằng điểm ảnh. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_RADIOMETRY: int

Trả về loại FLIR Lepton (đo bức xạ hay không). Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_REFRESH: int

Trả về tốc độ làm mới của FLIR Lepton tính bằng Hz. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_RESOLUTION: int

Trả về độ phân giải ADC của FLIR Lepton tính bằng bit. Xem CSI.ioctl.

csi.IOCTL_LEPTON_RUN_COMMAND: int

Thực thi lệnh 16-bit từ FLIR Lepton SDK. Xem CSI.ioctl.

csi.IOCTL_LEPTON_SET_ATTRIBUTE: int

Đặt thuộc tính FLIR Lepton từ FLIR Lepton SDK. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_ATTRIBUTE: int

Lấy thuộc tính FLIR Lepton từ FLIR Lepton SDK. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_FPA_TEMP: int

Lấy nhiệt độ FPA của FLIR Lepton tính bằng Celsius. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_AUX_TEMP: int

Lấy nhiệt độ AUX của FLIR Lepton tính bằng Celsius. Xem CSI.ioctl.

csi.IOCTL_LEPTON_SET_MODE: int

Đặt driver FLIR Lepton vào chế độ trong đó mỗi điểm ảnh là một giá trị nhiệt độ. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_MODE: int

Trả về xem chế độ đo lường có được bật cho cảm biến FLIR Lepton hay không. Xem CSI.ioctl.

csi.IOCTL_LEPTON_SET_RANGE: int

Đặt dải nhiệt độ được ánh xạ tới các giá trị điểm ảnh trong chế độ đo lường. Xem CSI.ioctl.

csi.IOCTL_LEPTON_GET_RANGE: int

Trả về dải nhiệt độ được dùng cho chế độ đo lường. Xem CSI.ioctl.

csi.IOCTL_HIMAX_MD_ENABLE: int

Điều khiển ngắt phát hiện chuyển động trên HM01B0. Xem CSI.ioctl.

csi.IOCTL_HIMAX_MD_WINDOW: int

Đặt cửa sổ phát hiện chuyển động trên HM01B0. Xem CSI.ioctl.

csi.IOCTL_HIMAX_MD_THRESHOLD: int

Đặt ngưỡng phát hiện chuyển động trên HM01B0. Xem CSI.ioctl.

csi.IOCTL_HIMAX_MD_CLEAR: int

Xóa ngắt phát hiện chuyển động trên HM01B0. Xem CSI.ioctl.

csi.IOCTL_HIMAX_OSC_ENABLE: int

Điều khiển bộ dao động nội bộ trên HM01B0. Xem CSI.ioctl.

csi.IOCTL_GET_RGB_STATS: int

Trả về thống kê RGB từ cảm biến camera. Xem CSI.ioctl.

csi.IOCTL_GENX320_SET_BIASES: int

Đặt các độ lệch cảm biến GENX320 thành một trong các preset GENX320_BIASES_*. Xem CSI.ioctl. Sau CSI.reset, driver áp dụng csi.GENX320_BIASES_LOW_NOISE, không phải csi.GENX320_BIASES_DEFAULT --- dùng ioctl này để chuyển sang preset khác khi ứng dụng cần độ nhạy hoặc băng thông cao hơn.

csi.GENX320_BIASES_DEFAULT: int

Giá trị mặc định theo bảng dữ liệu GenX320 --- độ nhạy, nhiễu và băng thông cân bằng cho các cảnh thông thường.

csi.GENX320_BIASES_LOW_LIGHT: int

Được điều chỉnh cho điều kiện ánh sáng thấp --- cả hai ngưỡng tương phản đều được nới lỏng để tăng độ nhạy, FO giảm, HPF bị tắt để các thay đổi độ sáng chậm vẫn được ghi nhận.

csi.GENX320_BIASES_ACTIVE_MARKER: int

Được điều chỉnh để theo dõi đèn LED nhấp nháy có tương phản cao (các điểm đánh dấu hoạt động) --- ngưỡng tương phản được nâng cao để chỉ các chuyển tiếp sắc nét mới kích hoạt, FO và HPF được tăng cao để tối đa băng thông và loại bỏ độ trôi môi trường chậm, REFR=0 để mọi cạnh nhấp nháy đều được ghi lại.

csi.GENX320_BIASES_LOW_NOISE: int

Mặc định driver --- độ nhạy thấp hơn DEFAULT (ngưỡng tương phản được nâng cao) và FO thấp hơn để giảm hoạt động nhiễu nền. Tốt nhất cho các cảnh tĩnh hoặc chậm nơi các sự kiện sai sẽ chiếm ưu thế.

csi.GENX320_BIASES_HIGH_SPEED: int

Được điều chỉnh cho các cảnh chuyển động nhanh --- FO cao hơn để băng thông điểm ảnh rộng hơn, HPF cao hơn để loại bỏ các thay đổi chậm, REFR cao hơn cho thời gian chết dài hơn sau mỗi sự kiện để việc đọc không bị bão hòa.

csi.IOCTL_GENX320_SET_BIAS: int

Đặt một độ lệch cảm biến GENX320 đơn lẻ thành giá trị DAC. Truyền một hằng số GENX320_BIAS_* (csi.GENX320_BIAS_DIFF_OFF, csi.GENX320_BIAS_DIFF_ON, csi.GENX320_BIAS_FO, csi.GENX320_BIAS_HPF, hoặc csi.GENX320_BIAS_REFR) và một giá trị DAC nguyên. Mỗi độ lệch là độc lập --- gọi ioctl này nhiều lần để chỉ điều chỉnh các độ lệch bạn cần sau khi áp dụng preset. Xem CSI.ioctl.

csi.GENX320_BIAS_DIFF_OFF: int

Ngưỡng tương phản bộ so sánh âm --- kiểm soát mức độ tối của một điểm ảnh trước khi csi.PIX_OFF_EVENT kích hoạt. Giá trị thấp hơn = nhạy hơn (nhiều sự kiện hơn).

csi.GENX320_BIAS_DIFF_ON: int

Ngưỡng tương phản bộ so sánh dương --- kiểm soát mức độ sáng của một điểm ảnh trước khi csi.PIX_ON_EVENT kích hoạt. Giá trị thấp hơn = nhạy hơn (nhiều sự kiện hơn).

csi.GENX320_BIAS_FO: int

Tần số cắt bộ lọc thông thấp của điểm ảnh --- đánh đổi giữa băng thông điểm ảnh (tốc độ/độ trễ) và hoạt động nhiễu nền. Giá trị cao hơn = phản hồi điểm ảnh nhanh hơn, nhiều nhiễu hơn.

csi.GENX320_BIAS_HPF: int

Tần số cắt bộ lọc thông cao của điểm ảnh --- loại bỏ các thay đổi độ sáng chậm. Giá trị cao hơn = lọc bỏ các thay đổi chậm hơn (chỉ các chuyển tiếp nhanh mới được ghi nhận).

csi.GENX320_BIAS_REFR: int

Giai đoạn trơ của điểm ảnh --- thời gian chết sau khi điểm ảnh phát ra sự kiện mà trong đó nó không thể kích hoạt lại. Giá trị cao hơn = thời gian chết dài hơn, ít sự kiện hơn từ điểm ảnh bận.

csi.IOCTL_GENX320_SET_AFK: int

Đặt bộ lọc chống nhấp nháy (AFK) của GENX320, loại bỏ các sự kiện từ các điểm ảnh chuyển đổi ở một dải tần số tuần hoàn (đèn huỳnh quang, màn hình LED, v.v.). Truyền enable (1 để bật, 0 để tắt) và khi bật, các cạnh dải tính bằng hertz: (enable, freq_low_hz, freq_high_hz). Xem CSI.ioctl.

csi.IOCTL_GENX320_SET_STC: int

Đặt chế độ bộ lọc tương phản không gian-thời gian (STC) của GENX320. Truyền một hằng số GENX320_STC_* (csi.GENX320_STC_DISABLE, csi.GENX320_STC_ONLY, csi.GENX320_STC_TRAIL_ONLY, csi.GENX320_STC_TRAIL) theo sau là (các) ngưỡng mà chế độ yêu cầu (tính bằng mili giây). Xem CSI.ioctl.

csi.GENX320_STC_DISABLE: int

Vô hiệu hóa bộ lọc STC/trail của GENX320 --- mọi sự kiện đều đi qua.

csi.GENX320_STC_ONLY: int

Giữ sự kiện thứ hai của một loạt; loại bỏ sự kiện đầu tiên và bất kỳ sự kiện nào sau đó. Nhận một tham số, stc_threshold tính bằng mili giây --- các sự kiện trong cửa sổ đó của một sự kiện trước đó trên cùng điểm ảnh được coi là một phần của cùng loạt.

csi.GENX320_STC_TRAIL_ONLY: int

Giữ sự kiện đầu tiên của một loạt; loại bỏ các sự kiện tiếp theo trên cùng điểm ảnh cho đến khi trail_threshold đã trôi qua. Nhận một tham số, trail_threshold tính bằng mili giây.

csi.GENX320_STC_TRAIL: int

Giữ sự kiện đầu tiên của một loạt cộng với các cạnh tiếp theo --- kết hợp csi.GENX320_STC_ONLYcsi.GENX320_STC_TRAIL_ONLY. Nhận hai tham số, stc_thresholdtrail_threshold (cả hai tính bằng ms); cảm biến yêu cầu hai giá trị này duy trì tỷ lệ khoảng 13:1.

csi.IOCTL_GENX320_SET_MODE: int

Đặt chế độ hoạt động của GENX320. Truyền csi.GENX320_MODE_HISTO cho biểu đồ tần suất sự kiện trên chip (cam hoạt động như camera thang xám thông thường ở tốc độ khung hình đã cấu hình) hoặc csi.GENX320_MODE_EVENT theo sau là độ dài trục hàng của ndarray sự kiện (lũy thừa của hai từ 1024 đến 65536) để stream sự kiện thô. Xem CSI.ioctl.

csi.GENX320_MODE_HISTO: int

Chế độ biểu đồ tần suất --- các sự kiện được tích lũy trên chip vào các bin theo từng điểm ảnh và được báo cáo dưới dạng khung hình thang xám 320x320 ở tốc độ đã cấu hình (~20-350 FPS). Cam trông giống như một camera thông thường, vì vậy tất cả các quy trình xử lý ảnh tiêu chuẩn đều hoạt động trực tiếp.

csi.GENX320_MODE_EVENT: int

Chế độ sự kiện --- bỏ qua biểu đồ tần suất trên chip và stream các sự kiện thô vào ndarray numpy với dấu thời gian micro giây, cho các ứng dụng cần đầy đủ chi tiết thời gian thay vì khung hình đã được phân bin sẵn.

csi.IOCTL_GENX320_READ_EVENTS: int

Đọc các sự kiện thô vào ndarray uint16 có hình dạng (EVT_res, 6) (với EVT_res khớp với kích thước bộ đệm được truyền đến csi.IOCTL_GENX320_SET_MODE). Các cột là [0] loại sự kiện (csi.PIX_OFF_EVENT, csi.PIX_ON_EVENT, csi.EXT_TRIGGER_RISING/FALLING, csi.RST_TRIGGER_RISING/FALLING), [1] dấu thời gian giây, [2] mili giây, [3] micro giây, [4] tọa độ X (0-319), [5] tọa độ Y (0-319). Trả về số lượng sự kiện được ghi vào bộ đệm, để các hàng cũ hơn ngoài số đếm đó không bị chạm vào. Xem CSI.ioctl.

csi.IOCTL_GENX320_CALIBRATE: int

Tự động vô hiệu hóa các điểm ảnh nóng --- các điểm ảnh kích hoạt bừa bãi ngay cả trên một cảnh tĩnh. Driver xây dựng số lần nhấn theo từng điểm ảnh 320x320, tính toán giá trị trung bình và độ lệch chuẩn, và vô hiệu hóa bất kỳ điểm ảnh nào có số lần vượt quá mean + sigma * stddev. Truyền ngân sách đếm sự kiện (số sự kiện cần tính trước khi tính toán thống kê --- cao hơn = ước tính đáng tin cậy hơn, chậm hơn; ~10000 là mặc định tốt) và một float sigma (thấp hơn = mạnh hơn, mặc định ~0.5). Trả về số điểm ảnh bị vô hiệu hóa. Hãy hướng cam vào một cảnh tĩnh trước để các sự kiện do chuyển động không bị tính vào các điểm ảnh thực ra là bình thường. Xem CSI.ioctl.

csi.IOCTL_GENX320_READ_EVENTS_RAW: int

Trả về image.Image khung sự kiện thô từ GENX320, với các sự kiện vẫn ở định dạng mã hóa gốc của chip --- hữu ích nếu bạn muốn chuyển stream thô đến PC để giải mã ngoại tuyến thay vì xử lý trên cam. Xem CSI.ioctl.

csi.PIX_OFF_EVENT: int

Loại sự kiện GENX320 (cột [0]) --- một điểm ảnh phát hiện giảm độ sáng (ngưỡng tương phản âm bị vượt qua). Các cột [4]/[5] mang X/Y của điểm ảnh.

csi.PIX_ON_EVENT: int

Loại sự kiện GENX320 (cột [0]) --- một điểm ảnh phát hiện tăng độ sáng (ngưỡng tương phản dương bị vượt qua). Các cột [4]/[5] mang X/Y của điểm ảnh.

csi.RST_TRIGGER_RISING: int

Loại sự kiện GENX320 (cột [0]) --- trigger reset điểm ảnh, cạnh lên. X/Y không được sử dụng. Hiện không được tạo ra bởi firmware.

csi.RST_TRIGGER_FALLING: int

Loại sự kiện GENX320 (cột [0]) --- trigger reset điểm ảnh, cạnh xuống. X/Y không được sử dụng. Hiện không được tạo ra bởi firmware.

csi.EXT_TRIGGER_RISING: int

Loại sự kiện GENX320 (cột [0]) --- chân trigger ngoài của cảm biến nhận cạnh lên. Đầu vào trigger ngoài của GENX320 được nối với đường đồng bộ khung hình của camera, cũng được dẫn đến P10 trên bộ xử lý và header chân. X/Y không được sử dụng.

csi.EXT_TRIGGER_FALLING: int

Loại sự kiện GENX320 (cột [0]) --- chân trigger ngoài của cảm biến nhận cạnh xuống. Đầu vào trigger ngoài của GENX320 được nối với đường đồng bộ khung hình của camera, cũng được dẫn đến P10 trên bộ xử lý và header chân. X/Y không được sử dụng.