MakerGram Logo

    MakerGram

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Tags
    • Users
    • Groups

    [Solved] leaf disease detection using keras

    General Discussion
    4
    18
    3403
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sreu13 last edited by salmanfaris

      The code given below is for image classification, it seems to be running well until the last iteration which gives the following error >
      "C:/Users/admin/Desktop/plant_disease_classification/plant_disease_classification/untitled1.py", line 45, in <module>
      print (label_binarizer.classes_[predict1])

      AttributeError: 'LabelBinarizer' object has no attribute 'classes_'

      import numpy as np
      import pickle
      import cv2
      from os import listdir
      from sklearn.preprocessing import LabelBinarizer
      from keras.models import load_model
      from keras.models import Sequential
      from keras.preprocessing import image
      from keras.preprocessing.image import img_to_array
      from sklearn.preprocessing import MultiLabelBinarizer
      
      from sklearn.model_selection import train_test_split
      import matplotlib.pyplot as plt
      import tensorflow
      
      default_image_size = tuple((256, 256))
      
      #load the pickle file 
      file_object = open(r'C:\Users\admin\Desktop\pr3\cnn_model.pkl', 'rb')
      model = pickle.load(file_object)
      
      #load the leaf image that is to be classified
      imgpath=r'C:\Users\admin\Desktop\pr1\PlantVillage\diseases\Pepper__bell___healthy\0a3f2927-4410-46a3-bfda-5f4769a5aaf8___JR_HL 8275.JPG'
      
      
      def convert_image_to_array(image_dir):
          try:
              image = cv2.imread(image_dir)
              if image is not None :
                  image = cv2.resize(image, default_image_size)   
                  return img_to_array(image)
              else :
                  return np.array([])
          except Exception as e:
              print(f"Error : {e}")
              return None
      
      imar = convert_image_to_array(imgpath) 
      np_image_list = np.array([imar], dtype=np.float16) / 225.0 
      
      label_binarizer = LabelBinarizer()
      
      predict1 = model.predict(np_image_list) 
      
      print (label_binarizer.classes_[predict1])
      

      the screenshot of the above complied code and error is uploaded for reference.

      Screenshot (142).png

      1 Reply Last reply Reply Quote 0
      • salmanfaris
        salmanfaris last edited by salmanfaris

        @sreu13 said in leaf disease detection using keras:

        AttributeError: 'LabelBinarizer' object has no attribute 'classes_'

        Hi, Can you try downgrade the scikit by typing

        pip install scikit-learn==0.15.2
        

        and are you following any guide or something, if yes can you share that also?

        1 Reply Last reply Reply Quote 0
        • S
          sreu13 last edited by

          @salmanfaris said in leaf disease detection using keras:

          pip install scikit-learn==0.15.2

          tried downgrading, but came up with this error.

          ERROR: Failed building wheel for scikit-learn

          and I've been following Kaggle kernel,
          link-https://www.kaggle.com/emmarex/plant-disease-detection-using-keras

          1 Reply Last reply Reply Quote 0
          • S
            SuperGops last edited by

            I think you need to use the fit or fit_transform function before you predict the classes and use the Binarizer. Have a look at scikit's official documentation for the same.

            https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.LabelBinarizer.html

            S 1 Reply Last reply Reply Quote 1
            • S
              sreu13 @SuperGops last edited by

              @SuperGops

              i've entered this code,

              def fit_transform(self, n_classes):

              but as I run it, I get the indentation Error given below
              File"C:/Users/admin/Desktop/plant_disease_classification/plant_disease_classification/untitled1.py", line 42
              label_binarizer = LabelBinarizer()
              ^
              IndentationError: expected an indented block

              S 1 Reply Last reply Reply Quote 0
              • S
                SuperGops @sreu13 last edited by

                @sreu13
                fit and fit_transform are actually inbuilt functions found in the scikit-learn library. So I'd suggest you fit your model with the available data using those functions whose application can be found on scikit-learn's documentation and then proceed with the Binarizer.

                S 1 Reply Last reply Reply Quote 1
                • S
                  sreu13 @SuperGops last edited by

                  @SuperGops
                  so basically ,i'll have to restart and retrain the model with fit_transform?

                  S 1 Reply Last reply Reply Quote 0
                  • S
                    SuperGops @sreu13 last edited by

                    @sreu13 Yup

                    S 1 Reply Last reply Reply Quote 0
                    • A
                      arunksoman last edited by

                      Could you please follow my steps:

                      1. Uninstall your current Python 3.7 version
                      2. Install Python 3.6.5
                      3. If you are using spyder editor make a change to vscode.
                      4. Go to integrated terminal of vscode and create a virtual environment
                      python -m venv venv
                      
                      1. Activate your virtual environment
                      .\venv\Scripts\activate
                      
                      1. Create a requirements.txt over your current working directory. Contents for requirements.txt given below:
                      h5py==2.8.0
                      imutils==0.5.1
                      Keras==2.2.4
                      Keras-Applications==1.0.6
                      Keras-Preprocessing==1.0.5
                      kiwisolver==1.0.1
                      matplotlib==3.0.2
                      numpy==1.15.3
                      opencv-contrib-python==3.4.3.18
                      Pillow==5.3.0
                      PyWavelets==1.0.1
                      scikit-image==0.14.1
                      scikit-learn==0.20.0
                      scipy==1.1.0
                      six==1.11.0
                      sklearn==0.0
                      tensorboard==1.12.0
                      tensorflow==1.12.0
                      termcolor==1.1.0
                      toolz==0.9.0
                      
                      1. Then install necessary packages using requirements.txt file
                      pip install -r requirements.txt
                      
                      1. Then run your code within this venv and say what happened as reply here.
                      S 2 Replies Last reply Reply Quote 0
                      • S
                        sreu13 @SuperGops last edited by

                        @SuperGops
                        i also have another pickle file "label_transform", which I got as an output from referring the initial code from gaggle, is there any use of this file?

                        label_binarizer = LabelBinarizer()
                        image_labels = label_binarizer.fit_transform(label_list)
                        pickle.dump(label_binarizer,open('label_transform.pkl', 'wb'))
                        n_classes = len(label_binarizer.classes_)
                        

                        Kaggle >https://www.kaggle.com/emmarex/plant-disease-detection-using-keras/data

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Recent Posts

                        • J

                          Hi everyone,

                          I recently left my 9-to-5 corporate job after almost a decade to chase something I’ve always dreamed about—starting my own food business. It started small: just a cloud kitchen running out of a rented space, late nights testing recipes, early mornings handling orders, and zero regrets so far.

                          Now, with some loyal customers, decent growth, and a lot of love from the community, I’m slowly working toward turning this little kitchen into a walk-in café. It’s a scary, exciting step—but I want to do it right.

                          That brings me to this post. As we grow, I want our team to look as professional as we feel. We’re in the market for good-quality chef coats for kitchen staff—something that’s breathable, durable, easy to wash, and doesn't look sloppy after a long day. Style matters too, since we’ll be customer-facing soon.I found a brand called Lintex online. They seem pretty legit, offer kitchen uniforms, long sleeve chef coats, and even frontdesk uniforms (which could be useful later). Their site looks solid, but I’ve never ordered uniforms before, and I’m a little nervous about fabric quality and fit.

                          Has anyone here ordered from Lintex before? Would love to hear your suggestions. Thanks in advance!

                          • read more
                        • J

                          At Lintex, we understand that being a doctor means more than long hours and tough calls; it also means showing up every day ready to move, think, and care with confidence. That’s why we design scrubs for doctors that are built for real-life performance without compromising on comfort or style.

                          Our collection of doctor scrubs is crafted with breathable fabrics, smart tailoring, and functional features like strategically placed pockets, wrinkle resistance, and movement-friendly cuts. Whether you're making rounds, managing emergencies, or staying on your feet during surgeries, Lintex scrubs are made to support your every move.

                          We don't believe in one-size-fits-all. From classic V-necks to modern fits, we offer options that let you choose what works best for your body and your role. If you're looking for the best scrubs for doctors, you’re in the right place.

                          Join the Lintex community and discover the best scrubs for doctors that work as hard as you do.

                          Explore more at www.lintex.in or drop us a line at reachus@anvka.com

                          • read more
                        • J

                          I'm an Oral-Maxillofacial Surgeon working with a trauma hospital and academic setup in Delhi. We get our 3D models, from Curewith3D, a dedicated 3D lab equipped with FDM and SLA 3D printers, focused on presurgical planning and patient-specific modeling.

                          We routinely use 3D printed anatomical models, especially for complex facial reconstructions, TMJ cases, and orthognathic surgeries. They’re invaluable for surgical rehearsals, resident training, and most importantly, patient education. When patients can physically hold their jaw model and understand the procedure, consent becomes more informed and anxiety levels drop.

                          As for printing surgical instruments or implants, we’re cautious. While the 3D orthopedic implants we design are precise and patient-specific, their final manufacturing still goes through standard biocompatible grade processes. Like in most regions, concerns about sterilization, structural integrity, and litigation prevent experimental tools from entering the OR directly. That said, the potential for custom joint replacement implants and 3D knee replacement implants in underserved areas is enormous. We see 3D printing as a huge enabler in low-resource and humanitarian settings.

                          • read more
                        • D

                          Signal Hunt: An ESP-NOW Workshop & Treasure Hunt

                          Hello everyone! We’re planning on organizing a two-phase event that explores device-to-device communication using ESP-NOW protocol :

                          Workshop: Participants learn to build and program ESP32-based receivers with a web interface that directly exchange signal data using ESP-NOW for RSSI-based distance approximation.

                          Signal Hunt Competition: Equipped with these receivers, participants will track hidden ESP32 transmitters scattered around the campus, each with distinct point values.

                          Current hardware setup:
                          Reciever(one per team):
                          Esp32 ~ 360rs
                          9v battery = 20rs
                          9v battery clip= 5rs
                          buck converter (MP1584 or LM2596) ~ 45rs
                          Perfboard + male to female berg strip ~30rs
                          Total per reciever ~ 460rs
                          Transmitters :6
                          Components same as recievers = 460*6~2760rs

                          (using non-rechargeable batteries to reduce cost,
                          will using a 7805 voltage regulator IC be a viable way to reduce cost further?)

                          We’d love your suggestions on ways to simplify hardware, reducing the cost, secure partnerships and funding, or enhance the interactive elements. Thank you, looking forward to any ideas that can help make the event engaging and successful!

                          • read more
                        • M

                          RTA offers a diverse range of stylish apparel, including rta clothing staples like rta hoodie men, men's rta hoodie, and the sleek black rta hoodie. Their denim collection features must-haves such as rta denim pants, rta denim mens, rta denim jeans, rta skinny jeans, rta jeans mens, rta jeans, and rta denim shorts. Complete your look with rta shorts, rta shirts, rta t shirt, rta t shirt men, and cozy options like the rta sweatshirt. For a functional touch, add rta cargo pants to your wardrobe and create the ultimate rta outfit for any occasion.

                          • read more
                        By MakerGram | A XiStart Initiative | Built with ♥ NodeBB
                        Copyright © 2023 MakerGram, All rights reserved.
                        Privacy Policy | Terms & Conditions | Disclaimer | Code of Conduct