def k_folding_adaboost_parameter_tuning(self, k, tuning_param): total_fold_size = len(self.total_fold) div = div = total_fold_size % k part = int(total_fold_size / k) max = -99 accuracy_list = [] for i in range(0, k): #if i!=4: # continue validation_fold_dataset, validation_fold_label, train_fold_dataset, train_fold_label = self.calculate5folding( i, self.total_fold, self.label, part) boosting = Boosting.Boosting(tuning_param, train_fold_dataset, train_fold_label, validation_fold_dataset, validation_fold_label, len(train_fold_dataset)) boosting.fit() accuracy = boosting.predict() print("Model accuracy", accuracy) accuracy_list.append(accuracy) return np.mean(np.asarray(accuracy_list)), np.std( np.asarray(accuracy_list))
import numpy as np from skimage.transform import integral_image import cv2 from FeatureHaar import* from Boosting import* video = cv2.VideoCapture('OpenCV-Trackers/assets/chaplin.mp4') ret, frame = video.read() roi = cv2.selectROI(frame) frame = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY) roi_ls = [roi[0],roi[1],roi[0]+roi[2],roi[1]+roi[3]] tracker = Boosting(frame,roi_ls,150,12500,50,2) tracker.get_search_region() tracker.set_ii_searchregion() tracker.build_features() tracker.init_selector_pool() tracker.train_weak_classifier() tracker.get_strong_classifier() while(video.isOpened()): ret, frame = video.read() frame = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY) tracker.update_frame(frame) tracker.get_confidence_map() new_roi = tracker.get_meanshift_bbox() tracker.update_roi(new_roi) tracker.get_search_region() cv2.rectangle(frame,(new_roi[0],new_roi[1]),(new_roi[2],new_roi[3]),(0,255,0),2) cv2.imshow('frame',frame)
# img_ii = integral_image(img) # print(img_ii) # roi = [1,1,4,4] # bo = Boosting(img,roi,10,30,6,2) # bo.get_search_region() # bo.set_ii_searchregion() # bo.build_features() # bo.init_selector_pool() # bo.train_weak_classifier() img_org = cv2.imread("./assets/edge-detection.png") roi = cv2.selectROI(img_org) print(roi) img = cv2.cvtColor(img_org, cv2.COLOR_RGB2GRAY) roi_image = img[roi[1]:roi[1] + roi[3], roi[0]:roi[0] + roi[2]] cv2.imshow("roiImage", roi_image) roi_ls = [roi[0], roi[1], roi[0] + roi[2], roi[1] + roi[3]] bo = Boosting(img, roi_ls, 150, 12500, 50, 2) bo.get_search_region() bo.set_ii_searchregion() bo.build_features() bo.init_selector_pool() bo.train_weak_classifier() bo.get_strong_classifier() bo.get_confidence_map() new_roi = bo.get_meanshift_bbox() #new_roi = bo.get_bbox() cv2.rectangle(img_org, (new_roi[0], new_roi[1]), (new_roi[2], new_roi[3]), (0, 255, 0), 2) cv2.imshow('newroi', img_org) cv2.waitKey(0)
n_param = tuning_parameter() '''bagging=Bagging.Bagging(20) bagging.BaggingClassifier(training_dataset,label_train,test_dataset,label_test,14000) #print("final accuracy :",accuracy) bagging=Bagging.Bagging(50) bagging.BaggingClassifier(training_dataset,label_train,test_dataset,label_test,14000) bagging=Bagging.Bagging(100) bagging.BaggingClassifier(training_dataset,label_train,test_dataset,label_test,14000) bagging=Bagging.Bagging(200) bagging.BaggingClassifier(training_dataset,label_train,test_dataset,label_test,14000)''' #n_param=100 #bagging=Bagging.Bagging(n_param) #bagging.BaggingClassifier(training_dataset,label_train,training_dataset,label_train,14000) boosting = Boosting.Boosting(n_param, training_dataset, label_train, test_dataset, label_test, 14000) boosting.fit() accuracy = boosting.predict() print("=====================================") print("final accuracy :", accuracy) '''accuracy=Classify.Gaussian_classify_NB(training_dataset,label_train,test_dataset,label_test) print("======================================") print("actual naive bayes accuracy :",accuracy)''' '''clf=AdaBoostClassifier(base_estimator=DecisionTreeClassifier(max_leaf_nodes=5,max_depth=2), n_estimators=150) clf.fit(training_dataset,label_train) print("original adaboost",clf.score(test_dataset,label_test))'''
# [ 4 ,8 ,12 ,16 ,20 ,24], # [ 5 ,10 ,15 ,20 ,25 ,30], # [ 6 ,12 ,18 ,24 ,30 ,36]]) img = np.array([[1, 2, 3, 4, 15, 6], [2, 4, 6, 8, 1, 2], [3, 6, 19, 2, 5, 1], [6, 3, 13, 6, 0, 4], [0, 11, 15, 21, 2, 3], [21, 1, 18, 14, 3, 16]]) # print('IMAGE:') # print(img) print('IMAGE DIMENSIONS') print('{} * {}'.format(img.shape[0], img.shape[1])) img_ii = integral_image(img) print(img_ii) roi = [1, 1, 4, 4] bo = Boosting(img, roi, 10, 30, 6, 2) bo.get_search_region() bo.set_ii_searchregion() bo.build_features() bo.init_selector_pool() bo.train_weak_classifier() # img = cv2.imread("./assets/edge-detection.png") # roi = cv2.selectROI(img) # img = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY) # roi_image = img[roi[1]:roi[1]+roi[3],roi[0]:roi[0]+roi[2]] # cv2.imshow("roiImage",roi_image) # roi_ls = [roi[0],roi[1],roi[0]+roi[2],roi[1]+roi[3]] # bo = Boosting(img,roi_ls,10,12500,50,2) # bo.get_search_region() # bo.set_ii_searchregion()