Exemple #1
0
 def test_should_return_batches_equivalent_to_number_of_frames_2(self):
     video_loader = OpenCVReader(file_url='dummy.avi', batch_size=-1)
     batches = list(video_loader.read())
     expected = list(self.create_dummy_frames())
     self.assertEqual(len(batches), NUM_FRAMES)
     actual = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(actual, expected))
Exemple #2
0
 def test_should_return_batches_equivalent_to_number_of_frames(self):
     video_info = DataFrameMetadata("dataset_1", 'dummy.avi')
     video_loader = VideoLoader(video_info)
     batches = list(video_loader.load())
     dummy_frames = list(self.create_dummy_frames())
     self.assertEqual(len(batches), NUM_FRAMES)
     expected = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(dummy_frames, expected))
Exemple #3
0
 def test_should_start_frame_number_from_two(self):
     video_loader = OpenCVReader(
         file_url='dummy.avi', batch_size=NUM_FRAMES, start_frame_id=2)
     batches = list(video_loader.read())
     expected = list(self.create_dummy_frames(
         filters=[i for i in range(0, NUM_FRAMES)], start_id=2))
     self.assertEqual(1, len(batches))
     actual = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(actual, expected))
Exemple #4
0
 def test_should_return_only_few_frames_when_limit_is_specified(self):
     video_info = DataFrameMetadata("dataset_1", 'dummy.avi')
     limit = 4
     video_loader = VideoLoader(video_info, limit=limit)
     dummy_frames = list(
         self.create_dummy_frames(filters=[i for i in range(limit)]))
     batches = list(video_loader.load())
     self.assertEqual(limit, len(batches))
     expected = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(dummy_frames, expected))
Exemple #5
0
 def test_should_skip_first_two_frames_with_offset_two(self):
     video_info = DataFrameMetadata("dataset_1", 'dummy.avi')
     video_loader = VideoLoader(video_info, offset=2)
     dummy_frames = list(
         self.create_dummy_frames(
             filters=[i for i in range(2, NUM_FRAMES)]))
     batches = list(video_loader.load())
     self.assertEqual(NUM_FRAMES - 2, len(batches))
     expected = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(dummy_frames, expected))
Exemple #6
0
 def test_should_return_half_then_number_of_batches_with_skip_of_two(self):
     video_info = DataFrameMetadata("dataset_1", 'dummy.avi')
     video_loader = VideoLoader(video_info, skip_frames=2)
     batches = list(video_loader.load())
     dummy_frames = list(
         self.create_dummy_frames(
             filters=[i * 2 for i in range(NUM_FRAMES // 2)]))
     self.assertEqual(len(batches), NUM_FRAMES / 2)
     expected = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(dummy_frames, expected))
Exemple #7
0
 def test_should_return_single_batch_if_batch_size_equal_to_no_of_frames(
         self):
     video_info = DataFrameMetadata("dataset_1", 'dummy.avi')
     video_loader = VideoLoader(video_info, batch_size=NUM_FRAMES)
     dummy_frames = list(
         self.create_dummy_frames(filters=[i for i in range(NUM_FRAMES)]))
     batches = list(video_loader.load())
     self.assertEqual(1, len(batches))
     expected = batches[0].frames.to_dict('records')
     self.assertTrue(custom_list_of_dicts_equal(dummy_frames, expected))
Exemple #8
0
 def test_should_skip_first_two_frames_and_batch_size_equal_to_no_of_frames(
         self):
     video_loader = OpenCVReader(
         file_url='dummy.avi', batch_size=NUM_FRAMES, offset=2)
     batches = list(video_loader.read())
     expected = list(self.create_dummy_frames(
         filters=[i for i in range(2, NUM_FRAMES)]))
     self.assertEqual(1, len(batches))
     actual = [batch.frames.to_dict('records')[0] for batch in batches]
     self.assertTrue(custom_list_of_dicts_equal(actual, expected))
    def test_load_frame_load_frames_using_petastorm(self, mock):
        dummy_values = map(lambda i: self.DummyRow(i,
                                                   np.ones((2, 2, 3)) * i),
                           range(3))
        mock.return_value = self.DummyReader(dummy_values)

        video_info = DataFrameMetadata("dataset_1", 'dummy.avi')

        video_loader = PetastormLoader(video_info,
                                       curr_shard=3,
                                       total_shards=3)
        actual = list(video_loader._load_frames())
        expected = [value._asdict() for value in dummy_values]

        self.assertTrue(custom_list_of_dicts_equal(expected, actual))