def _getNewYEstimateAtCurrentResolutionLevel(self, X, radiograph, currentTooth, currentResolutionLevel, filter_settings): # Pre process image img = Filter.process_image( deepcopy(radiograph.getImage(deepCopy=True)), filter_settings[0], filter_settings[1], filter_settings[2]) derivate_img = Filter.laplacian(img) # derivate_img = Filter.histogramEql(Filter.process_image(deepcopy(img), filter_settings[0], filter_settings[1], filter_settings[2])) # derivate_img = Filter.process_image(deepcopy(derivate_img), median_kernel=3, bilateral_kernel=5) #cv2.imshow("Test", derivate_img) #cv2.waitKey(0) # Get the correct model multiResModel = self.completeStatisticalModel.getGrayLevelMultiResolutionModel( deepCopy=True) singleResModel = multiResModel.getGrayLevelSignleResModelByResolutionLevelIndex( currentResolutionLevel) toothModel = singleResModel.getGrayLevelToothModelByToothIndex( currentTooth, currentResolutionLevel) # Init X and Y Y = np.zeros((40, 2)) X = X.getLandmarks() counter = 0 for i in range(40): Y[i], is_close = self._getYPointEstimateFromGivenModelPoint( toothModel, i, X, currentResolutionLevel, currentTooth, img, derivate_img) if is_close: counter += 1 return Y, counter / 40
def filterTest(self): radiograph = self.dataHandler.getRadiographs(deepCopy=True)[0] blurred_img = Filter.process_image(deepcopy(radiograph.getImage()), median_kernel=3, bilateral_kernel=10) cv2.imshow("BlurredImage", blurred_img) clahe = cv2.equalizeHist(blurred_img) cv2.imshow("Clahe", clahe) img_1 = Filter.laplacian(blurred_img) cv2.imshow("Img1", img_1)
def trainGrayLevelModelForAllPointsAllExamples(self, k, resolutionLevel, filter_settings): """ calcualtes the gray-level vectors for all point of all teeth in all provided examples. """ radiographs = self.completeDataHandler.getRadiographs(deepCopy=True) g_all = list() for radiograph in radiographs: # Scale image to current resolution level for i in range(resolutionLevel): radiograph.downScale() # Pre process image img = Filter.process_image(deepcopy(radiograph.getImage(deepCopy=True)), filter_settings[0], filter_settings[1], filter_settings[2]) derivate_img = Filter.laplacian(img) # derivate_img = Filter.histogramEql(Filter.process_image(deepcopy(img), filter_settings[0], filter_settings[1], filter_settings[2])) # derivate_img = Filter.process_image(deepcopy(derivate_img), median_kernel=3, bilateral_kernel=5) g_ex = self.trainGrayLevelModelForAllPointsOneExample(img, derivate_img, radiograph, k) g_all.append(g_ex) return np.array(g_all)