from remote_command cimport RemoteCommand from annotation cimport Annotation from ai_config cimport AIRecognitionConfig cdef class Inference: cdef object session cdef object on_annotation cdef Annotation _previous_annotation cdef AIRecognitionConfig ai_config cdef bint stop_signal cdef str model_input cdef int model_width cdef int model_height cdef bint is_video(self, str filepath) cdef run_inference(self, RemoteCommand cmd, int batch_size=?) cdef _process_video(self, RemoteCommand cmd, int batch_size) cdef _process_image(self, RemoteCommand cmd) cdef stop(self) cdef preprocess(self, frame) cdef postprocess(self, output, int img_width, int img_height) cdef detect_frame(self, frame, long time) cdef bint is_valid_annotation(self, Annotation annotation)