Inspiration
As the rise of urbanization continues, the need for maintaining agricultural lands becomes more apparent as less land is available day-by-day. Over time, such sustainable agricultural development land will perish, and utilities such as ours will come into play, helping ordinary citizens to commercial farmers find the most optimal area for development.
What it does
TerraScope is able to analyze satellite images to asses agricultural conditions for any given location. It uses multi-spectral data and machine learning to generate insights on crop suitability, environment risk and yield potential, which is all displayed in a 2x2 grid of AI-generated summaries. An AI agent summarizes the findings and ultimately, predicts on how well agriculture might thrive.
How we built it
For creating the UI, we developed our website using React and Tailwind for styling, Vite/Vercel for quick local testing, and Axios for connecting the front to the backend for API communication. For the backend, we used FastAPI/Uvicorn for our server, three different api endpoints for main analysis, machine learning terrain forecasts, and satellite imagery proxy. Combined with feature engineering through the model, we then used a random forest regressor for our crop yield and suitability and a random forest classifier for risk classification. We also implemented Supabase with a PostgreSQL database for users, terrain_reports, etc for auth and live data access. We used Google Earth Engine as a fallback source in case there was no EOSDA satellite data, or an API request failed. Lastly, we utilized the Fetch.ai framework and Docker to automize and containerize a monitoring agent that polls terrain prediction endpoint hourly and analyzes risk/suitability scores, creating alerts on high risk zones.
Challenges we ran into
The biggest challenge was the pivot. Before this project we had work on a 3D visualization that took in coordinates and gave us a a 3D interactive map, with a AI chatbot that gave us details either about the region itself or urban strategy or even military strategy. Even though we got close, we decided to pivot since there was no free open source 3D engine that was able to provide detailed enough renders for our needs. We had spent the majority of our time Saturday on trying to get some sort of 3D Engine working until we were forced to pivot to TerraScope.
Accomplishments that we're proud of
Since this is our first hackathon as incoming sophomore students, we are proud of being able to have completed our project without having to scrap it entirely. Moreover, we're proud of our projects potential impact on the agricultural scene, an industry thats slowly being pushed out of the space over time.
What we learned
While we were learning about implementing APIs and understanding and creating the architecture of our project, our main learning avenue was understanding what was feasible given our skills and what we could utilize that was open source or sponsored tools at our event and what wasn't. Learning what tools that are out there and what technologies were available was essential to us learning how to structure our project, as well as how to pivot our idea into a finished working product.
What's next for TerraScope
In terms of the future, this project can be scaled into a product that everyday people can use to their needs for analyzing land for agricultural purposes. In doing so, we can connect more and more people to up to date realistic conditions for terrains and boost the amount agricultural development occurring in contemporary society.
Built With
- axios
- claude
- css
- docker
- eosda
- eslint
- fastapi
- fetch.ai
- google-earth
- html
- javascript
- node.js
- numpy
- opencv
- postcss
- pytest
- python
- railway
- react
- scikit-learn
- scipy
- sql
- structing
- supabase
- supbase-auth
- tailwind
- uvicorn
- vercel
- vite
Log in or sign up for Devpost to join the conversation.