(Luận văn) nghiên cứu kỹ thuật deep learning và ứng dụng trong phân loại ảnh

79 2 0
(Luận văn) nghiên cứu kỹ thuật deep learning và ứng dụng trong phân loại ảnh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC QUY NHƠN LÊ THỊ PHƢƠNG NGÂN lu an n va NGHIÊN CỨU KỸ THUẬT DEEP LEARNING to p ie gh tn VÀ ỨNG DỤNG TRONG PHÂN LOẠI ẢNH w Mã số: 8.48.01.01 d oa nl Chuyên ngành: Khoa học máy tính ll u nf va an lu oi m z at nh Ngƣời hƣớng dẫn: TS Lê Xuân Việt z m co l gm @ an Lu n va ac th si LỜI CAM ĐOAN Tôi xin cam đoan: luận văn “Nghiên cứu kỹ thuật Deep Learning ứng dụng phân loại ảnh” cơng trình nghiên cứu dƣới hƣớng dẫn giảng viên hƣớng dẫn, không chép lại ngƣời khác Các tài liệu đƣợc luận văn tham khảo, kế thừa trích dẫn đƣợc liệt kê danh mục tài liệu tham khảo Tơi xin chịu hồn tồn trách nhiệm lời cam đoan lu Quy Nhơn, ngày tháng 09 năm 2020 an n va Học viên ie gh tn to p Lê Thị Phƣơng Ngân d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si LỜI CẢM ƠN Trên thực tế khơng có thành cơng mà không gắn liền với hỗ trợ, giúp đỡ dù hay nhiều, dù trực tiếp hay gián tiếp ngƣời khác Với lòng biết ơn sâu sắc nhất, xin chân thành cảm ơn quý Thầy Cô Trƣờng Đại h c Quy Nhơn, đ c biệt quý thầy Khoa Cơng nghê thơng tin tận tình dạy dỗ, giúp đỡ tạo m i điều kiện tốt cho suốt quãng thời gian theo h c trƣờng để hồn thành đƣợc đề tài lu Tơi tỏ lịng biết ơn sâu sắc đến TS Lê Xuân Việt, ngƣời thầy tận tình an va hƣớng dẫn khoa h c giúp đỡ, bảo tơi suốt q trình nghiên cứu n tạo m i điều kiện tốt cho tơi hồn thành luận văn ie gh tn to Cuối cùng, xin chân thành cảm ơn đến gia đình, anh chị p bạn đồng nghiệp động viên cổ vũ, đóng góp ý kiến cho tơi suốt q nl w trình h c nhƣ làm luận văn tốt nghiệp, giúp hoàn thành đề tài luận d oa văn thời hạn va an lu ll u nf Quy Nhơn, ngày tháng 09 năm 2020 oi m Học viên z at nh z m co l gm @ Lê Thị Phƣơng Ngân an Lu n va ac th si MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN DANH MỤC CHỮ VIẾT TẮT DANH MỤC CÁC HÌNH VẼ Lý ch n đề tài Mục đích nhiệm vụ nghiên cứu lu Đối tƣợng phạm vi nghiên cứu an va Phƣơng pháp nghiên cứu n Cấu trúc luận văn: gh tn to CHƢƠNG 1: MỘT SỐ KIẾN THỨC LIÊN QUAN p ie 1.1 Tổng quan h c máy w 1.1.1 H c máy gì? Một số ví dụ oa nl 1.1.2 d 1.2 Phân nhóm thuật tốn h c máy an lu 1.2.1 Phân nhóm theo phƣơng thức h c u nf va 1.2.1.1 H c có giám sát (Supervised Learning) 1.2.1.2 H c không giám sát (Unsupervised learning) ll oi m 1.2.1.3 H c bán giám sát (hay h c kết hợp - Semi-supervised z at nh Learning) 1.2.1.4 H c củng cố (Reinforcement Learning) z gm @ 1.2.2 Phân nhóm dựa chức 10 1.2.2.1.Các thuật toán hồi quy (Regression Algorithms) 10 l m co 1.2.2.2 Các thuật toán phân cụm 10 1.2.2.3 Các thuật toán phát luật 11 an Lu 1.3 Mạng neural nhân tạo (Artificial Neural Network - ANN) 11 n va ac th si 1.3.1 Giới thiệu mạng Neural [1] 11 1.3.2 Cấu tạo trình xử lý neural sinh h c 12 1.3.3 Cấu tạo trình xử lý neural nhân tạo 13 1.3.4 Các mơ hình hàm kích hoạt mạng neural nhân tạo 14 1.3.5 Mô hình mạng neural 17 1.3.6 Một số kiểu mạng Neural 18 1.3.7 Thuật toán lan truyền ngƣợc MLP 21 1.4 Tổng quan toán nhận dạng ảnh 27 lu 1.5 Tổng quan Deep Learning 31 an 1.6 Kết luận chƣơng 31 va n CHƢƠNG 2: MẠNG NEURAL TÍCH CHẬP 33 gh tn to 2.1 Khái niệm mạng neural tích chập 33 ie 2.2 Phép tính Convolution (tích chập) 34 p 2.3 Cấu trúc mạng neural tích chập 35 nl w 2.4 Đào tạo mạng neural tích chập 44 d oa 2.5 Nguyên tắc xây dựng mạng neural tích chập 47 an lu 2.6 Một số kiến trúc mạng CNN tiếng [6] 48 u nf va 2.6 Kết luận chƣơng 49 CHƢƠNG 3: ỨNG DỤNG MẠNG CNN TRONG PHÂN LOẠI HÌNH ll oi m ẢNH 50 z at nh 3.1 Yêu cầu toán 50 3.2 Giải vấn đề 50 z 3.3 Mô hình mạng CNN tốn 51 @ l gm 3.4 Huấn luyện 54 m co 3.5 Đánh giá mơ hình 56 3.6 Thử nghiệm nhận dạng ảnh 56 an Lu 4.1 Kết đạt đƣợc: 59 n va ac th si 4.2 Ƣu nhƣợc điểm phƣơng pháp 59 4.3 Hƣớng phát triển 59 PHỤ LỤC QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN (bản sao) lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si DANH MỤC CHỮ VIẾT TẮT Mô tả AI ANN Artificial Neural Network – Mạng thần kinh nhân tạo CNN Convolutional Neural Network – Mạng thần kinh tích chập ReLU Rectified Linear Unit – Điều chỉnh đơn vị tuyến tính CSDL Cơ sở liệu GPU Graphics Processing Unit – Vi xử lý đồ h a CPU Central Processing Unit – Bộ xử lý trung tâm DL Deep learning – h c sâu SVM lu STT Ý nghĩa Artificial Intelligence - Trí tuệ nhân tạo an n va p ie gh tn to Support Vector Machine - thuật toán phân lớp d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si DANH MỤC CÁC HÌNH VẼ Hình 1 Neuron sinh h c 13 Hình Mơ hình neural 14 Hình Hàm Sigmoid 15 Hình Đồ thị hàm Tanh 16 Hình Đồ thị hàm Relu 16 Hình So sánh tốc độ hội tụ hàm Relu với hàm Tanh 17 Hình Mơ hình mạng neural lớp 17 lu an Hình Mơ hình mạng neural nhiều lớp3 18 n va Hình Mạng tự kết hợp 19 tn to Hình 10 Mạng kết hợp khác kiểu 19 gh Hình 11 Mạng truyền thẳng 20 p ie Hình 12 Mạng phản hồi 20 w Hình 13 Mơ hình mạng neural lớp ẩn 24 oa nl Hình Sơ đồ tổng tổng quát cấu trúc mạng CNN 35 d Hình 2 Phép tính tích chập ảnh màu với k=3 35 an lu Hình Ma trận đầu vào 36 u nf va Hình ma trận l c 36 Hình 2.5 Các bƣớc thực phép tính tích chập cho ma trận X với ll oi m l c K 37 z at nh Hình kết phép tính tích chập 37 Hình Ma trận X (lớp vào) thêm viền bên 38 z Hình Lớp lấy mẫu tối đa với kính thƣớc=(3,3), bƣớc nhảy=1, đƣờng viền @ gm phụ =0 40 l Hình 10 Mơ hình lớp lấy mẫu 41 m co Hình 11 Ví dụ lớp lấy mẫu7 41 an Lu Hình 12 Một số ví dụ đầu vào đầu hàm softmax 43 Hình Dữ liệu CIFAR10 dataset 50 n va ac th si Hình Một số hình CIFAR10 51 Hình 3 code để link tới file Google drive 56 Hình Đồ thị accuracy training set validation set 56 Hình Một số hình minh h a kết việc phân loại ảnh batch Cifar-10 57 Hình Một số hình minh h a kết việc phân loại ảnh load lên từ điện thoại 58 lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si MỞ ĐẦU Lý chọn đề tài Phân loại ảnh trƣờng hợp tốn phân lớp với mục đích cuối xác định ảnh đƣợc đƣa vào thuộc lớp số lớp đƣợc phân loại Đây vấn đề cốt lõi lĩnh vực computer vision (nhìn máy hay thị giác máy) nói riêng trí tuệ nhân tạo nói chung Phân loại lu ảnh có nhiều ứng dụng sống an Phân loại ảnh viễn thám hay ảnh vệ tinh góp phần giải tốn va n khí tƣợng thủy văn, lũ lụt, hạn hán; nghiên cứu thực vật quy mô lớn, Phân loại ảnh biển báo giao thông nhận diện biển báo ứng dụng p ie gh tn to nghiên cứu nhiệt độ m t nƣớc dƣới đại dƣơng, giám sát cháy rừng,…[4] oa nl xe tự lái w phần mềm cảnh báo xe hơi, thành phần thiếu thiết kế d Phân loại ảnh y tế vấn đề quan tr ng lĩnh vực lu an nhận dạng hình ảnh mục đích phân loại hình ảnh y tế thành u nf va loại khác để giúp bác sĩ chẩn đoán bệnh ho c đƣa kết luận y khoa ll Phân loại ảnh hỗ trợ cho việc phân loại rác y tế, công việc cần m oi hỗ trợ tự động hóa, giải phóng sức lao động mơi trƣờng nhiễm cho z at nh ngƣời z Ứng dụng kết nghiên cứu phân loại ảnh xuất nhiều phần gm @ mềm smart phone Google Lens Google nhận dạng nhiều loại hình l ảnh nhƣ loại động vật, thực vật, hoa, đồ dùng có thƣơng hiệu nhiều đồ an Lu xuất liên kết để mua sắm muốn m co vật khác Ngoài ra, đối tƣợng tìm đƣợc, Google Lens đề n va ac th si 56 Hình code để link tới file Google drive lu an 3.5 Đánh giá mơ hình va n Để đánh mơ hình có hoạt động với độ xác cao hay khơng tơi tn to sử dụng hình ảnh kiểm tra nằm test batch Cifar-10 mà lúc huấn ie gh luyện máy chƣa nhìn thấy để đánh giá Với mơ hình CNN đầy đủ trên, ta p thu đƣợc kết thử nghiệm 0.8078 Với thời gian huấn luyện 30 phút nl w Qua kết thu đƣợc, thấy độ accuracy mơ hình, đánh d oa giá tập kiểm thử, thấp so với số liệu trình huấn luyện ll u nf va an lu oi m z at nh z m co l gm @ Hình Đồ thị độ xác mơ hình huấn luyện thử nghiệm an Lu 3.6 Thử nghiệm nhận dạng ảnh n va ac th si 57 Với mơ hình đƣợc đào tạo, dùng để đƣa dự đoán với số ảnh thực tế đƣợc chụp từ điện thoại ho c máy ảnh Đầu tiên, ta load lại mơ hình thu đƣợc q trình đào tạo Sau đó, đƣa vào ảnh để kiểm tra thuộc lớp 10 lớp sau: “máy bay, tơ, chim, mèo, hƣơu, chó, ếch, ngựa, tàu thủy, xe tải” Ta thu đƣợc kết nhƣ sau: Bộ hình ảnh kiểm tra nằm test batch Cifar-10 mà lúc huấn luyện máy chƣa nhìn thấy để thử nghiệm Sau kết xuất 30 ảnh đầu lu tiên test batch, kết thu đƣợc nhƣ hình 3.5 (dự đốn 24 hình an n va sai hình) p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z @ m co l Cifar-10 gm Hình Một số hình minh họa kết việc phân loại ảnh batch an Lu n va ac th si 58 Tiếp theo, thử nghiệm số hình ảnh chụp từ điện thoại máy chụp ảnh load vào mơ hình Kết thu đƣợc nhƣ hình 3.6 M c dù tỉ lệ chƣa cao Tuy nhiên, thử nghiệm cho số ảnh có phức tạp ho c nhiều đối tƣợng chƣơng trình cho kết nhƣ hình có ho c mèo cho đƣợc kết lu an n va p ie gh tn to d oa nl w va an lu u nf Hình Một số hình minh họa kết việc phân loại ảnh load lên từ điện ll thoại oi m 3.7 Kết luận chƣơng z at nh Khi áp dụng mạng neural tích chập vào tốn phân loại ảnh z thực tế, hệ thống hoạt động ổn định tỉ lệ sai số ngƣỡng thấp @ gm chấp nhận đƣợc Về bản, nội dung thể đƣợc bƣớc để l giải tốn phân loại ảnh thực tế Từ việc phân tích u cầu m co tốn đến quy trình xử lý chƣơng trình thử nghiệm với kết an Lu n va ac th si 59 KẾT LUẬN 4.1 Kết đạt đƣợc: Tổng hợp đƣợc kiến thức, nắm vững kỹ thuật Deep Learning, xây dựng đƣợc mơ hình h c máy kỹ thuật cho liệu khác - Cài đ t chƣơng trình Python, ứng dụng mơ hình Deep Learning phân loại nhận dạng ảnh màu - Ý nghĩa khoa h c ứng dụng thực tiễn đề tài: Nghiên cứu lu an thuật tốn Deep Learning xây dựng mơ hình h c máy để phân loại va n nhận dạng ảnh Với kiến trúc mạng CNN đề xuất toán phân loại ảnh phù hợp p ie gh tn to 4.2 Ƣu nhƣợc điểm phƣơng pháp cho dataset CIFAR-10 nhƣng chƣa có thích hợp cho dataset khác oa nl w Bởi ln có ƣu điểm nhƣợc điểm phƣơng pháp d Ƣu điểm: Tìm kiếm ảnh dựa phân lớp ảnh giảm thiểu số ảnh lu va an phải so sánh tƣơng đồng ll oi m 4.3 Hƣớng phát triển u nf Nhƣợc điểm: Mơ hình CNNs phức tạp h c lâu z at nh Trong trình thực đề tài, hạn chế m t trình độ thời gian thực luận văn có hạn nên luận văn cịn nhiều điều chƣa làm z hết Vì thế, cần phải cải thiện để phát triển tiếp sau Theo @ l gm vấn đề cịn sót lại cần phải cải thiện bao gồm: Tìm cách tăng độ xác tƣơng đồng cho mơ hình m co Phát triển cho dataset có kích thƣớc lớn có nhiều nhãn dán an Lu Tìm kiếm nhiều đối tƣợng ảnh n va ac th si 60 DANH MỤC TÀI LIỆU THAM KHẢO [1] TS Lê Xuân Vinh – Đại h c Quy Nhơn - Giáo trình Machine Learning, 2019 Vũ [2] Hữu Tiệp (2017) Machine Learning http://machinelearningcoban.com/general/2017/02/06/featureengineering/ [3] Nguyễn Thanh Tuấn, “Sách Deep Learning bản“, https://drive.google.com/file/d/1lNjzISABdoc7SRq8tg- lu xkCRRZRABPCKi/view, 2019 an [4] Z Lai, H F Deng, Medical Image Classification Based on Deep Features va n Extracted by Deep Model and Statistic Feature Fusion with to gh tn Multilayer Perceptron, Comput Intell Neurosci, 2018; p ie [5] Hai Wang, Yingfeng Cai, Long Chen, A Vehicle Detection Algorithm w Based on Deep Belief Network , The Scientific World Journa, 2014; oa nl [6] https://www.coursera.org/specializations/deep-learning; Qingwu Li, Guanying Huo, Yan Zhou, Image d [7] Liangji Zhou, lu Using Biomimetic va an Classification Neural Networks u nf Convolutional Pattern Recognition Features, with Computational ll Intelligence and Neuroscience, 2017 oi m z at nh [8] Yu Sun, Yuan Liu, Guan Wang, Haiyan Zhang, Deep Learning for Plant Identification in Natural Environment, Computational Intelligence z and Neuroscience, 2017; @ l gm [9] Hai Wang, Yingfeng Cai, Long Chen, A Vehicle Detection Algorithm Based on Deep Belief Network, Hindawi Publishing Corporatione m co The Scientific World Journal, 2014 an Lu [10] Shan Pang, Xinyi Yang, Deep Convolutional Extreme Learning Machine n va ac th si 61 and Its Application in Handwritten Digit Classification, Hindawi Publishing Corporation Computational Intelligence and Neuroscience , 2016 [11] Srdjan Sladojevic, Marko Arsenovic, Culibrk, Darko Stefanovic, Andras Anderla, Dubravko Deep Neural Networks Based Recognition of Plant Diseases by Leaf Image Classification, Hindawi Publishing Corporation Computational Intelligence and Neuroscience , 2016 lu an [12] Wei Hu, Yangyu Huang, Li Wei, Fan Zhang, Hengchao Li, Deep n va Convolutional Neural Networks for Hyperspectral Image tn to Classification, Hindawi Publishing Corporation Journal of Sensors, ie gh 2015 p [13] Kumar, "Achieving 90% accuracy in Object Recognition Task on CIFAR10 Dataset with Keras: Convolutional Neural Networks," nl w Available: oa [Online] d https://appliedmachinelearning.blog/2018/03/24/achieving-90- lu va an accuracy-in-object-recognition-task-on-cifar-10-dataset-with-keras- ll u nf convolutional-neural-networks/, 2018 oi m [14] Ling Zhang ; Bo Zhang, A geometrical representation of McCulloch- Networks, 1999 z at nh Pitts neural model and its applications, IEEE Transactions on Neural z @ l gm [15] lJiuYangabLidanWangabYanWangabTengtengGuoab , A novel memristive Neurocomputing, 2017 m co Hopfield neural network with application in associative memory, an Lu n va ac th si 62 [16] Andrej Karpathy (n.d.) CS231n Convolutional Neural Networks for Visual Recognition - Visualizing what ConvNets learn http://cs231n.github.io/understanding-cnn/ [17] http://bis.net.vn/forums/p/482/898.aspx [18] https://www.oreilly.com/library/view/deeplearning/9781491924570 /assets/dpln_0408.png lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si Pl- PHỤ LỤC  Mã nguồn thuật toán trừ chƣơng trình: from google.colab import drive drive.mount('gdrive') %cd /content/gdrive/My Drive/Colab Notebooks from future import print_function lu import keras an n va from keras.datasets import cifar10 tn to from keras.preprocessing.image import ImageDataGenerator ie gh from keras.models import Sequential p from keras.layers import Dense, Dropout, Activation, Flatten d import os oa nl w from keras.layers import Conv2D, MaxPooling2D lu va an import matplotlib.pyplot as plt z at nh z m co l # The data, split between train and test sets: gm num_predictions = 20 @ data_augmentation = True oi epochs = 10 m num_classes = 10 ll batch_size = 32 u nf from tensorflow.keras import datasets, layers, models an Lu (x_train, y_train), (x_test, y_test) = cifar10.load_data() n va ac th si Pl- print('x_train shape:', x_train.shape) print(x_train.shape[0], 'train samples') print(x_test.shape[0], 'test samples') class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', ' ship', 'truck'] plt.figure(figsize=(10, 10)) for i in range(25): lu plt.subplot(5, 5, i + 1) an n va plt.xticks([]) plt.grid(False) ie gh tn to plt.yticks([]) p plt.imshow(x_train[i], cmap=plt.cm.binary) plt.show() d oa nl w plt.xlabel(class_names[y_train[i][0]]) lu va an # Convert class vectors to binary class matrices u nf y_train = keras.utils.to_categorical(y_train, num_classes) ll y_test = keras.utils.to_categorical(y_test, num_classes) z at nh model = Sequential() oi m def cnn_model(): z e=(32, 32, 3))) model.add(Conv2D(32, (3,3),activation = 'relu')) model.add(Dropout(0.1)) an Lu model.add(MaxPooling2D(pool_size=(2, 2))) m co l gm @ model.add(Conv2D(32, (3,3),activation = 'relu',padding='same', input_shap n va ac th si Pl- model.add(Conv2D(64, (3, 3), activation='relu', padding='same')) model.add(Conv2D(64, (3, 3), activation='relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.1)) model.add(Conv2D(128, (3, 3), activation='relu', padding='same')) model.add(Conv2D(128, (3, 3), activation='relu')) model.add(MaxPooling2D(pool_size=(2, 2))) lu model.add(Dropout(0.1)) an n va model.add(Flatten()) model.add(Dropout(0.1)) ie gh tn to model.add(Dense(512, activation='relu')) p model.add(Dense(10, activation='softmax')) return model d oa nl w model.summary() lu va an model=cnn_model() ll u nf opt = keras.optimizers.RMSprop(learning_rate=0.0001, decay=1e-6) x_train = x_train.astype('float32') z at nh racy']) oi m model.compile(loss='categorical_crossentropy', optimizer=opt, metrics=['accu m co l an Lu model_detail= model.fit(x_train, y_train, gm x_test /= 255 @ x_train /= 255 z x_test = x_test.astype('float32') n va ac th si Pl- batch_size=128, epochs=100, validation_data=(x_test, y_test), verbose=1) model_json = model.to_json() print(model_json) with open('model.json', 'w') as json_file: lu json_file.write(model_json) an n va model.save_weights('model.h5') tn to # Score trained model ie gh scores = model.evaluate(x_test, y_test, verbose=0) p print (scores) oa nl w print('Test loss:', scores[0]) d print('Test accuracy:', scores[1]*100) lu va an model.save("ngan_model") ll u nf plt.plot(model_detail.history['accuracy'], label='accuracy') plt.ylabel('Accuracy') l gm @ plt.legend(loc='lower right') z plt.ylim([0.5, 1]) z at nh plt.xlabel('Epoch') oi m plt.plot(model_detail.history['val_accuracy'], label = 'val_accuracy') m co test_loss, test_acc = model.evaluate(x_test, y_test, verbose=2) an Lu print(test_acc) n va ac th si Pl- ## 10 Thử lại ảnh model_json = model.to_json() print(model_json) plt.imshow(x_test[9999]) plt.show() img = x_test[9999].reshape(1, 32, 32, 3) # prepare pixel data lu img = img.astype('float32') an n va result = model.predict_classes(img) tn to print(result) ie gh # print('Giá trị dự báo: ', np.argmax(y_predict)) p # test ảnh oa nl w from keras.preprocessing.image import save_img d for i in range(10): lu va an save_img("test1/{0}.png".format(str(i)), x_test[i]) ll u nf from keras.preprocessing.image import load_img oi m from keras.preprocessing.image import img_to_array import matplotlib.pyplot as plt an Lu img = load_img(filename, target_size=(32, 32)) m co # load the image l gm @ def load_image(filename): z # load and prepare the image z at nh from keras.models import load_model n va ac th si Pl- plt.imshow(img) plt.show() # convert to array img = img_to_array(img) # reshape into a single sample with channels img = img.reshape(1, 32, 32, 3) # prepare pixel data lu img = img.astype('float32') an n va # img = img / 255.0 tn to return img ie gh # load an image and predict the class p def run_example(filename): oa nl w # load the image d img = load_image(filename) va an lu # predict the class ll u nf result = model.predict_classes(img) run_example('test1/0.png') l gm @ from os.path import isfile, join z from os import listdir z at nh # entry point, run the example oi m print(class_names[result[0]]) m co onlyfiles = [f for f in listdir("test1/") if isfile(join("test1/", f))] an Lu print(onlyfiles) n va ac th si Pl- for ii in onlyfiles: run_example('test1/'+ii) from os import listdir from os.path import isfile, join onlyfiles = [f for f in listdir("test/") if isfile(join("test/", f))] print(onlyfiles) for ii in onlyfiles: lu run_example('test/'+ii) an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si lu an n va p ie gh tn to d oa nl w ll u nf va an lu oi m z at nh z m co l gm @ an Lu n va ac th si

Ngày đăng: 19/07/2023, 05:05