def checkCandidates(self): imageCollections = data_io.get_train_df() featureGetter = FeatureGetter() (namesObservations, coordinates, train) = featureGetter.getTransformedDatasetChecking(imageCollections) imageNames = namesObservations currentImage = imageNames[0] csvArray = Utils.readcsv(imageNames[0]) mitoticPointsDetected = 0 totalMitoticPoints = len(csvArray) finalTrain = [] for i in range(len(coordinates)): if imageNames[i] != currentImage: csvArray = Utils.readcsv(imageNames[i]) totalMitoticPoints += len(csvArray) currentImage = imageNames[i] for point in csvArray: if ((point[0] - coordinates[i][0])**2 + (point[1] - coordinates[i][1])**2) < 30**2: mitoticPointsDetected += 1 csvArray.remove(point) finalTrain.append(train[i]) break finalTrain = np.array(finalTrain) allArea = finalTrain[:, 0] allPerimeter = finalTrain[:, 1] allRoundness = finalTrain[:, 2] totalObservations = len(coordinates) print "Minimum Area: %f" % np.min(allArea) print "Minimum Perimeter: %f" % np.min(allPerimeter) print "Minimum Roundness: %f" % np.min(allRoundness) print "Maximum Area: %f" % np.max(allArea) print "Maximum Perimeter: %f" % np.max(allPerimeter) print "Maximum Roundness: %f" % np.max(allRoundness) print "Total number of candidates: %d" % (totalObservations) print "Total number of mitotic points: %d" % (totalMitoticPoints) print "Mitotic points detected: %d" % (mitoticPointsDetected) print "Mitotic points missed: %d" % (totalMitoticPoints - mitoticPointsDetected)
def checkCandidates(self): imageCollections = data_io.get_train_df() featureGetter = FeatureGetter() (namesObservations, coordinates, train) = featureGetter.getTransformedDatasetChecking(imageCollections) imageNames = namesObservations currentImage = imageNames[0] csvArray = Utils.readcsv(imageNames[0]) mitoticPointsDetected = 0 totalMitoticPoints = len(csvArray) finalTrain = [] for i in range(len(coordinates)): if imageNames[i] != currentImage: csvArray = Utils.readcsv(imageNames[i]) totalMitoticPoints += len(csvArray) currentImage = imageNames[i] for point in csvArray: if ((point[0]-coordinates[i][0]) ** 2 + (point[1]-coordinates[i][1]) ** 2)< 30**2: mitoticPointsDetected += 1 csvArray.remove(point) finalTrain.append(train[i]) break finalTrain = np.array(finalTrain) allArea = finalTrain[:,0] allPerimeter = finalTrain[:,1] allRoundness = finalTrain[:,2] totalObservations = len(coordinates) print "Minimum Area: %f" % np.min(allArea) print "Minimum Perimeter: %f" % np.min(allPerimeter) print "Minimum Roundness: %f" % np.min(allRoundness) print "Maximum Area: %f" % np.max(allArea) print "Maximum Perimeter: %f" % np.max(allPerimeter) print "Maximum Roundness: %f" % np.max(allRoundness) print "Total number of candidates: %d" % (totalObservations) print "Total number of mitotic points: %d" %(totalMitoticPoints) print "Mitotic points detected: %d" %(mitoticPointsDetected) print "Mitotic points missed: %d" %(totalMitoticPoints-mitoticPointsDetected)