Наследование класса OpenCV от OpenCV- Python - PullRequest
0 голосов
/ 09 апреля 2020

Я работаю над алгоритмами отслеживания в OpenCV, где алгоритмы отслеживания наследуют суперкласс Tracker . Я знаю, что OpenCV реализован на C ++, и OpenCV- Python использует связывание с реализацией C ++.

Без изменения кода C ++ я могу просто создать другой класс Python (a отличается от алгоритма трекера) и наследует ли класс трекер? Например, я могу просто сделать что-то вроде приведенного ниже кода?

import cv2
video_source = '/video/%04d.png'

class MyNewTracker(cv2.Tracker):

    def test(self):  
        print("My test function") 

if __name__ == '__main__':
    video = cv2.VideoCapture(video_source)
    bbox = (648, 584, 69, 200)
    ok, frame = video.read()
    tracker = MyNewTracker()
    ok = tracker.init(frame, bbox)

Редактировать: Когда я на самом деле запускаю код выше, я не получаю никакой синтаксической ошибки или необъявленной функции или чего-то подобного. Однако я получаю старую " Ошибка сегментации (дамп ядра) " старой ошибки. Является ли это признаком того, что наследование работает, но я неправильно использую функции внутри суперкласса Tracker.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...