Exemplo n.º 1
0
    def test_AllImagesFromSampeSampleAreGrouped(self):
        itemlist = []
        samples = [("bark_00", 0), ("bark_01", 0), ("bark_02", 0),
                   ("beans_01", 1), ("beans_02", 1), ("beans_03", 1)]
        for sample in samples:
            sampleID = sample[0]
            sampleClass = sample[1]
            itemlist.append([
                imageNamed(sampleClass, "%s_%s.png" % (sampleID, imgType))
                for imgType in ["o", "r", "rs", "s"]
            ])

        items = self.joinLists(itemlist)
        numpy.random.shuffle(items)

        target = SampleGroupingDatasetSplitter(self.getNumberFunction)
        result = target.split(items, [.3, .3, .4])

        totalAfterSplit = self.joinLists(result)

        self.assertEqual(sorted(totalAfterSplit), sorted(items))

        for sample in samples:
            sampleID = sample[0]
            self.assertSamplesAreInOnlyOneSet([
                "%s_%s.png" % (sampleID, imgType)
                for imgType in ["o", "r", "rs", "s"]
            ], result)
Exemplo n.º 2
0
    def test_SplitsImages(self):
        items = [
            imageNamed(0, "bark_01_o.bmp"),
            imageNamed(0, "bark_02_o.bmp"),
            imageNamed(0, "bark_03_o.bmp")
        ]

        target = SampleGroupingDatasetSplitter(self.getNumberFunction)
        result = target.split(items, [.6, .2, .2])

        self.assertEquals(sorted(self.joinLists(result)), sorted(items))
        for d in result:
            self.assertEquals(1, len(d))
Exemplo n.º 3
0
def GroupingSplit(GetSampleNumberFunction = None):
    if GetSampleNumberFunction is None:
        GetSampleNumberFunction = GetSampleNumberFromFilename()

    return SampleGroupingDatasetSplitter(GetSampleNumberFunction)
Exemplo n.º 4
0
    def CreateWithSampleGroupingSplitter(imageSource, preprocessor = None, GetSampleNumberFunction = None):
        if GetSampleNumberFunction is None:
            GetSampleNumberFunction = GetSampleNumberFromFilename()
        return DatasetCreator(imageSource = imageSource,
                              datasetSplitter = SampleGroupingDatasetSplitter(GetSampleNumberFunction),
							  preprocessor = preprocessor)