#python #video #tiff #cv2 #video-tracking
Вопрос:
Я хочу использовать трекер cv2 с непрерывной последовательностью изображений (для отслеживания в реальном времени). Поэтому я не могу использовать vs = cv2.VideoCapture("video.mp4")
, у меня будет куча массивов numpy , где мне нужно анализировать один за другим, есть ли какой-либо способ, который я могу использовать frame = vs.read()
для инициализации трекера и обновления трекера с каждым полученным изображением?
Я уже пытался получить несколько изображений, а затем преобразовать их в видео (mp4 или avi), но, как вы можете себе представить, этот процесс очень медленный и бесполезный для отслеживания в реальном времени.
Я хотел бы сделать что-то подобное:
from tifffile import imread, imsave
img = imread("filename.tif") #shape = (1024,1024)
#HERE IS WHERE I HAVE PROBLEMS
vs = Treat_the_image_as_video(img) #In normal cases, here we would use cv2.VideoCapture
frame = vs.read() #?
bbox = get_bbox(image) #Get the bbox from the image (I already have this with cv2.findContours)
tracker = cv2.TrackerKCF_create() #Create tracker
tracker.init(frame, bbox)
while(True):
(success, bbox) = tracker.update(frame)
.
.
#Place the rectangle and text
.
.
img = imread("filename.tif") #shape = (1024,1024)
vs = Treat_the_image_as_video(img) #?
frame = vs.read() #?
Если вы можете дать мне какой-либо совет или подсказку о том, как я могу это решить, я был бы вам очень признателен.
Заранее спасибо!!