Я не могу разобраться, что возвращает этот раздел кода frame[:, :, ::-1]
frame[:, :, ::-1]
success, frame = video_capture.read() rgb_image = frame[:, :, ::-1] results = model.detect([rgb_image], verbose=0)
Первый : возвращает все строки, второй : возвращает все столбцы, ::-1 возвращает каналы кадров в обратном порядке. Подробнее о нарезке обозначений .
:
::-1
OpenCV cv2.VideoCapture.read () возвращает кадр в формате BGR, поэтому frame [:,:, :: - 1] преобразует его в формат RGB. Это похоже на использование cv2.cvtColor (frame, cv2.COLOR_BGR2RGB)
Здесь вы присваиваете все строки и все столбцы в обратном порядке переменной rgb_image .
-1 здесь важно то, что перевернуть список, используя последний индекс столбцов.
Это также быстрый способ нарезать списки или кортежи. Короче говоря, это питонский способ нарезать нелинейные структуры данных в Python.