Пример #1
0
    def convertLM(self, verbose=False):
        """
        Convert hand-labeled landmarks into the standard format if possible
        (or leave unchanged if parsing failed) and put them into new tier 'observed'
        (See 'Relating manual landmark labels with predicted landmark labels' in reference folder.)
        Return the unconverted points.
        """
        if self.get_tier('landmarks'):
            old_lms = LMTier.lmTier(self.get_tier('landmarks')).splitLMs()
        elif self.get_tier('LM'):
            old_lms = LMTier.lmTier(self.get_tier('LM')).splitLMs()
        if self.get_tier('LMmod'):
            old_comments = LMTier.lmTier(self.get_tier("LMmod")).splitLMs()
        elif self.get_tier('LMmods'):
            old_comments = LMTier.lmTier(self.get_tier("LMmods")).splitLMs()
        elif self.get_tier('comments'):
            old_comments = LMTier.lmTier(self.get_tier("comments")).splitLMs()
        new_lms = old_lms.merge(old_comments)
        new_lms.name = 'observed'
        errors = []

        if self.verbose:
            print('Converting hand-labeled landmarks into standard representation....')
        for point in new_lms:
            try:
                point.mark = LMref.stdLM(point.mark)
            except Exception as e:
                print(e)
                errors.append(point)           
        self.append(new_lms.splitLMs())
        return self.tiers[-1]
Пример #2
0
    def convertLM(self, verbose=False):
        """
        Convert hand-labeled landmarks into the standard format if possible
        (or leave unchanged if parsing failed) and put them into new tier 'observed'
        (See 'Relating manual landmark labels with predicted landmark labels' in reference folder.)
        Return the unconverted points.
        """
        if self.get_tier('landmarks'):
            old_lms = LMTier.lmTier(self.get_tier('landmarks')).splitLMs()
        elif self.get_tier('LM'):
            old_lms = LMTier.lmTier(self.get_tier('LM')).splitLMs()
        if self.get_tier('LMmod'):
            old_comments = LMTier.lmTier(self.get_tier("LMmod")).splitLMs()
        elif self.get_tier('LMmods'):
            old_comments = LMTier.lmTier(self.get_tier("LMmods")).splitLMs()
        elif self.get_tier('comments'):
            old_comments = LMTier.lmTier(self.get_tier("comments")).splitLMs()
        new_lms = old_lms.merge(old_comments)
        new_lms.name = 'observed'
        errors = []

        if self.verbose:
            print(
                'Converting hand-labeled landmarks into standard representation....'
            )
        for point in new_lms:
            try:
                point.mark = LMref.stdLM(point.mark)
            except Exception as e:
                print(e)
                errors.append(point)
        self.append(new_lms.splitLMs())
        return self.tiers[-1]