Beispiel #1
0
    def test_descriptor(self):
        # Check default
        do = DetectedObject(self.bbox)
        nt.ok_(self.check_descriptors_equal(do.descriptor_copy(), None))

        do.set_descriptor(self.descriptor)
        nt.ok_(
            self.check_descriptors_equal(do.descriptor_copy(),
                                         self.descriptor))
Beispiel #2
0
    def test_descriptor_modify(self):
        do = DetectedObject(self.bbox)
        do.set_descriptor(self.descriptor)

        # Attempts to modify the descriptor don't work
        do.descriptor_copy()[0] += 1
        # print(do.descriptor_copy().todoublearray(), self.descriptor.todoublearray())
        nt.ok_(
            self.check_descriptors_equal(do.descriptor_copy(),
                                         self.descriptor))

        # Modify the object copied from. Changes should not be reflected in
        # the detected_objects reference
        self.descriptor[0] += 1
        # print(do.descriptor_copy().todoublearray(), self.descriptor.todoublearray())
        nt.assert_false(
            self.check_descriptors_equal(do.descriptor_copy(),
                                         self.descriptor))

        # Storing the copy in a new variable, obviously, allows for modification
        desc = do.descriptor_copy()
        desc[0] += 1
        nt.assert_false(
            self.check_descriptors_equal(do.descriptor_copy(), desc))