Sarah’s Status Report for 4/24

This week and the week of the Interim Demo, the team finished up their individual components and completed the Ethics Assignment and Discussion. I worked on recognition of darker spotted diseases on plants. I simulated this by coloring in some of the leaves with reddish/ blackish dots which is the most common pattern of plant disease. Because of the background noise, I implemented a more accurate edge detection method to white out the background, and since some of the disease detection got in the way by the fruits or flowers, I made sure to white out those parts of the image too and only analyze diseases on the leaves. I also implemented bending of the plants by measuring the midpoint of the pot, then connecting flowers to the midpoint to see how bent the stems are from the roots of the plant. I added the Twilio API messaging system to report growth status updates through SMS as well.

I am slightly behind, because I planned on integrating most of the components together by today, but I am having some issues detecting dark spotting diseases, so I will be working on correcting that today before I move on and will work on connecting the whole system tomorrow.

Next week, I plan to have most of my testing done so that I have some testing and metrics to show for the final presentation, I would like to work on setting up the RPi to run the CV automatically when the RPi boots. Since I am coming to Hiroko’s place on Monday, I will also integrate the RPi and CV application with the greenhouse, so hopefully we can get the live stream embedded onto the website.

Hiroko’s Status Report for 4/24

This week, I prepared for the ethics discussion and finished adjusting the wire length of all of the electrical components. I ordered the junction box to enclose the electrical components early last week, but Amazon removed the item from its website, so I had to order a similar item. This delayed the arrival of the junction box by a week, and I just received it today.

The junction box arrived a week later than expected, which delayed the testing process. I am planning on testing the sensor data accuracy/lag to make sure that our sensors meet our greenhouse requirements with Kanon as soon as possible. Sarah is also planning to install the camera and RPi onto the greenhouse next week, so we are planning on integrating the camera into the greenhouse system soon.

Team Status Report for 4/10

This week, each of us worked on our individual components to present on the Interim Demo. Sarah finished the fruit/ flower detection and improved it so that it can find the most common types of flowers and fruits by working with the most common flower and fruit colors. Kanon worked on deploying the website onto EC2 and conducted a survey to test the website UI with 5 people. Hiroko adjusted the watering tube to distribute water more evenly to the plants, started adjusting the wires and cords to figure out the specific layout of the electrical components, and did some research on junction boxes on that would be suitable for encompassing the electrical components.

We made some changes to our schedule this week to account for the fact that Sarah will setup the CV application on the greenhouse on April 25th to integrate the Raspberry Pi and the camera into the greenhouse hardware system. We moved the individual system tests to come before the physical integration of the Raspberry Pi and the camera.

We are taking some risks by using the last available week to integrate the Raspberry Pi and the camera into the greenhouse  hardware system since we will not have much time to debug or order new components even though it will be an important part of our greenhouse. We will try to test our individual systems as thoroughly as possible before we try to integrate all of the parts, so we can avoid finding bugs last minute.

In our schedule, we designated some slack time for next week, since we will need to prepare for the interim demo and work on the ethics assignment individually. We will also catch up on some unfinished individual work that we have next week so that we can start testing and integrating the systems the week after.

Sarah’s Status Report for 4/10

This week, we all worked on our individual components to present on the Interim Demo. I finished my fruit/ flower detection and improved it so that it can find the most common types of flowers and fruits by working with the most common flower and fruit colors. I combined the fruit/ flower detection that I implemented with HSV Color Detection, and the pixel per metric function to make a growth classification system that will use these two parameters to notify the user on whether a new growth stage has been reached. The notifications are sent to the website and the user’s phone number through the Twilio API. I also made a program where the plant is separated from the background using Edge Detection, then the fruits or flowers are wiped out with HSV color detection to get the leaf alone. I am currently testing for the program to be able to detect white and discolored brown spotting, which is a common plant disease pattern, as well as withering. Further, I realized that I could be more specific with my testing metrics such as the accuracy of my pixel per metric when predicting the real height of the plant, so I will change some of my metrics to be more specific and critical of my application.

I am a bit behind schedule, as I would’ve liked to have my application run smoothly by Friday, but I still have to debug the disease detection and the Twilio API notification sending system. I will spend my weekend doing so and will have these functionalities prepared for the Interim Demo.

Next week, I hope to start on the plant vine and stem bending algorithm and test that out the following week. Based on the critiques from the Interim Demo and my own judgement of the quality of my CV application, I will change parameters and fine tune my application in the remaining weeks. I also plan on making stricter testing requirements and testing the CV application with these metrics in mind.

 

 

 

Hiroko’s Status Report for 4/10

This week, I adjusted the watering tube to distribute water more evenly to the plants, and started adjusting the wire length of the components so that I can figure out the specific layout of the electrical components. I need to order a case to enclose the electrical components in, so I did some research and found some junction boxes on Amazon that would be suitable for our greenhouse. I also spent some time working on the ethics assignment.

I spent more time on the ethics assignment than I would’ve liked to this week, but I think I am still on schedule and ready for our demo. I plan on ordering the junction box next week and finish adjusting the wire length of all of the electrical components so that I can place everything in the junction box when it arrives. Also, I am planning on testing the sensor data accuracy/lag to make sure that our sensors meet our greenhouse requirements.

Kanon’s Status Report for 4/10

This week, I first worked on deploying our website onto EC2 because I was supposed to do this last week. I had a bit of trouble doing this because I had to set up boto3 library and AWS CLI on EC2 instance. I kept getting a boto3 error which made me unable to set up my database model. However, after working for a while, I was able to set them up. I still need to set up apache and check if DynamoDB works successfully.

I also conducted a survey with 5 people. It seems like the website was still buggy and 2 people had a problem logging in with GoogleOAuth. I might take this away depending on whether I can find the specific bug corresponding to OAuth. Most of them liked the simple design of the website and found it very easy to navigate through the page. However, they also pointed out that there can be some improvements made such as letting the user enter the value directly instead of letting them use the slide bar.

I think I am still a bit behind schedule. Even though I have an experience of deploying a website through EC2, because I am using AWS CLI and DynamoDB for the database, the deployment process is more complicated that I expected it to be.

Next week, I will continue working on deployment by setting up apache and checking if the DynamoDB works correctly. I will also set up a simple notification script by using Twilio API.

Team Status Report for 4/3

This week, while we worked on our individual components, we also began to connect those components together. Sarah was able to embed the video to a simple HTML site running on local host, so we are expecting the transition from this to the actual website will be smooth. Hiroko and Kanon worked on the connection of the ESP32 to AWS, and were successfully able to send and receive data. All of us also planted some pea shoots for testing. Sarah was able to test her growth classifier implemented by detecting the sprouting of the pea shoots. Hiroko and Kanon are now able to test the sensors and make adjustments for better pea shoot growth.

Some risks that we need to look out for on the hardware side is to setup the wires and boards safely so that no water, moisture, or biomaterial will touch it. Depending on how the setup goes, we may need to make some containers and use zip ties to tie the hardware to certain parts of the greenhouse. With the TechSpark lab equipment and materials nearby Hiroko and Kanon, we can create containers if necessary. For the computer vision, the background of the greenhouse may be in the way of proper analysis, so to prevent that we will have a monochrome background to mitigate such issues, and Sarah is currently working with a box as her background for the CV analysis. The camera may also be difficult to adjust once it is placed in the greenhouse, so we are considering a RPi camera module stand and mount if we find issues fixing the camera onto the greenhouse.

Sarah had to adjust some parts of the CV implementation systems. Since the real colors of the greenhouse are washed out in night vision, we’ve decided to only have CV analysis going on in daylight when the IR filter is switched back on. We found that it is unnecessary to have the CV running when the users are asleep and when plant growth is very gradual. Further, the leaf and flower detection along with the defect detection will only be applied from the young plant stage to the harvest stage and not in germination, since most defects occur during those growth stages. Kanon had to calibrate some values that the soil moisture sensors read to percentages for user readability, and with the deployment and user testing coming up, she may have to adjust some of the UI. On the hardware side, Hiroko needs to adjust the watering tube so that water is distributed more evenly and adjustments like the making a container may be needed when the system is integrated to the greenhouse this upcoming week.

The schedule is mostly the same, but instead of shipping the RPi and the camera, Sarah has decided to bring the RPi and camera in May. Full integration of the greenhouse is therefore delayed by a week, but that gives us more time to work on our individual components and Sarah setting up the CV equipment herself will save more time for the integration process.

Sarah’s Status Report for 4/3

This week, we continued to work on our individual components, and we all planted the pea shoots. I tested whether night vision works in complete darkness, and it does so there is no extra LED lights needed in the dark. I’ve decided to turn off some CV analysis once the camera switches to night vision, because without the original colors of the image, we cannot perform proper analysis. Further, the plants grow very gradually day by day and assuming gardeners will be asleep at night, its unnecessary for the constant analysis. I was able to test my pea shoots that already sprouted, and using the pixel per metric method, I was able to classify the pea shoots as sprouting. I will need to adjust the camera and planting tray position to get a perfect sideview of the pea shoots for more accurate plant height calculation. Currently, I am working on making each leaf and flower an object and going through the list of objects to distinguish the difference and determine whether they are healthy, diseased, or withered with some edge detection and another layer of HSV Color Detection.

I am a bit behind schedule, as I wanted to test some pea shoots for defects, but I can’t do that until the pea shoots grow a little more so by next week they should be good to detect defects and I still need to fix some issues with my code. I changed my application to detect defects in the young plant, flowering, and harvesting stage, as plants tend to be diseased or withered around this time.

Next week, I will be working on sending notifications with the Twilio API to the website and SMS, as this is a part of the integration of the CV analysis to the website. Since the growth stage classifier is almost completed, I will test whether the user receives the correct notification about what growth stage the plant is in, and if it sends the correct amount of notifications. I also hope to have the leaf and flower detection, and defect detection completed before Interim Demos.

.

Hiroko’s Status Report for 4/3

This week, I connected the water pumps to the relay system that I assembled last week, and measured the flow rate of the water pump. Kanon and I met up and calibrated the soil moisture sensors in order to figure out when and how long to turn the water pumps on for. I planted the pea shoot plants earlier this week, so we used the soil to test the soil moisture sensors and water pumps. We also tested communications between ESP32 and AWS by sending sensor data to AWS, using the data and user inputs from the website to determine when to turn the greenhouse components on/off, and sending the on/off commands from AWS to ESP32.

Overall, I think I am on schedule. Next week, I plan on adjusting the watering tube to distribute water more evenly to the plant, and figure out where to physically place and connect the components in the greenhouse. I will need to adjust the wire length of all of the components connected to the ESP32 and determine the specific layout of the electrical components so that I can order a case with the right dimensions to enclose the electrical components in.

Kanon’s Status Report for 4/3

This week, I continued working on sending data from website to ESP32 that I was doing since last week, and also worked with Hiroko to calibrate sensor values.

Our website can now send data to ESP32 once the user changes the parameters (i.e. temperature, soil moisture) on the user page. The algorithm is pretty simple. If the user sets the temperature or soil moisture rate higher than the current value from the greenhouse, the website backend will send a binary signal to ESP32, and ESP32 will turn on the corresponding components such as heater or water pump. The LED light can be turned on and off in a similar manner.

The following is the data that we receive from ESP32 and is stored within AWS DynamoDB. As you can see, the soil_1 and soil_2 moisture sensors have values that are around 3000 or 2000. Hiroko and I had to calibrate this value so that the user can see them as a percentage.

This week, my actual schedule was to deploy the website to EC2, however, we had to work on calibration and had to play around with how we send data to ESP32, which can be done more easily when we work locally. Therefore, I decided to deploy the website next week, and I am off schedule for a week.

Next week, since initial schedule was dedicated for UI testing which is not a lot of work, I am aiming to deploy the website and also conduct UI testing at the same time.