[{"data":1,"prerenderedAt":277},["ShallowReactive",2],{"blog-en-\u002Fen\u002Fblog\u002Fplantfarm-scan-drone-ai-tree-health-with-getek":3},{"id":4,"title":5,"body":6,"description":260,"extension":261,"meta":262,"navigation":272,"path":273,"seo":274,"stem":275,"__hash__":276},"en_blog\u002Fen\u002Fblog\u002Fplantfarm-scan-drone-ai-tree-health-with-getek.md","PlantFarm Scan: Per-Tree Plant Health from Drone Imagery, Built with GETEK",{"type":7,"value":8,"toc":247},"minimark",[9,14,23,47,51,54,88,91,98,102,105,117,121,133,137,197,200,204,211,223,228],[10,11,13],"h2",{"id":12},"introduction","Introduction",[15,16,17,18,22],"p",{},"A walnut orchard has thousands of trees. Disease or water stress usually starts in a single tree, before the leaves turn yellow, and someone walking the orchard has almost no chance of spotting it early. Multispectral drone imagery solves half of the problem: it measures the plant's infrared response, which the eye cannot see. The other half is working out ",[19,20,21],"strong",{},"which tree"," is getting worse.",[15,24,25,32,33,38,39,42,43,46],{},[26,27,31],"a",{"href":28,"rel":29},"https:\u002F\u002Fplantfarm.com.tr\u002Ftr\u002F",[30],"nofollow","PlantFarm"," is ",[26,34,37],{"href":35,"rel":36},"https:\u002F\u002Fgetek-tr.com\u002F",[30],"GETEK","'s platform for tree-level traceability and field management. We built its ",[19,40,41],{},"PlantFarm Scan"," module together with ",[26,44,37],{"href":35,"rel":45},[30],": an AI application that takes a drone orthophoto, finds every tree, measures its health and follows it from flight to flight.",[10,48,50],{"id":49},"what-it-does","What It Does",[15,52,53],{},"The user uploads the GeoTIFF orthophoto from a flight. From there:",[55,56,57,64,70,76,82],"ol",{},[58,59,60,63],"li",{},[19,61,62],{},"Crown detection",": our own deep learning model (Walnut AI) extracts the crown of every walnut and almond tree at pixel level.",[58,65,66,69],{},[19,67,68],{},"Per-tree measurement",": vegetation indices such as NDVI, NDRE and GCI are computed over the pixels inside each crown. The measurement uses the actual crown mask, not the bounding box, so soil and grass between trees do not skew the average.",[58,71,72,75],{},[19,73,74],{},"Persistent tree ID",": the same tree gets the same ID across flights on different dates, using location-based matching.",[58,77,78,81],{},[19,79,80],{},"Trends",": each tree's index values become a time series, flight by flight. Rising, falling and stable trees are counted across the project and the worst performers are listed.",[58,83,84,87],{},[19,85,86],{},"Reports",": PDF, Excel or CSV reports for an area drawn on the map and the selected flights.",[15,89,90],{},"On top of that there is ground classification (soil, dry grass, green grass, healthy tree, stressed tree, shadow) and a relative vigour measure that compares each tree with its own surroundings. Land-registry parcel boundaries can also be queried on the map.",[15,92,93],{},[94,95],"img",{"alt":96,"src":97},"Tree detections by the PlantFarm Scan model on a test image","\u002Fsolutions\u002Fai\u002Fplantfarm-tree-detection.webp",[10,99,101],{"id":100},"why-an-off-the-shelf-approach-was-not-enough","Why an Off-the-Shelf Approach Was Not Enough",[15,103,104],{},"The first version separated trees by NDVI thresholding (Otsu's method): green is tree, everything else is not. That broke on the first real flight, where grass and weeds were green too. Touching crowns came out as one blob and patches of grass were counted as trees.",[15,106,107,108,111,112,116],{},"So we treated tree detection as an ",[19,109,110],{},"instance segmentation"," problem and trained the model on our own flight images. We describe how the model was trained, which frames we picked and what we learned in ",[26,113,115],{"href":114},"\u002Fen\u002Fblog\u002Fwalnut-crown-detection-training-yolov8-seg","a separate post",".",[10,118,120],{"id":119},"there-is-an-assistant-too","There Is an Assistant, Too",[15,122,123,124,127,128,132],{},"Numbers alone do not make a decision; someone has to ask \"this tree's NDRE has dropped for three flights, what could it be?\". The ",[19,125,126],{},"AI Operator"," in PlantFarm Scan answers that question by reading the project's own measurements together with walnut disease literature. It runs in-house on a local language model. Details are in our ",[26,129,131],{"href":130},"\u002Fen\u002Fblog\u002Flocal-llm-rag-agronomy-assistant","RAG agronomy assistant"," post.",[10,134,136],{"id":135},"technology","Technology",[138,139,140,153],"table",{},[141,142,143],"thead",{},[144,145,146,150],"tr",{},[147,148,149],"th",{},"Layer",[147,151,152],{},"What we use",[154,155,156,165,173,181,189],"tbody",{},[144,157,158,162],{},[159,160,161],"td",{},"Image processing",[159,163,164],{},"Rasterio, NumPy, OpenCV, Shapely, Cloud Optimized GeoTIFF",[144,166,167,170],{},[159,168,169],{},"AI",[159,171,172],{},"YOLOv8-seg (custom-trained), Ollama, bge-m3 embeddings",[144,174,175,178],{},[159,176,177],{},"Backend",[159,179,180],{},"Python, FastAPI, SQLAlchemy",[144,182,183,186],{},[159,184,185],{},"Frontend",[159,187,188],{},"React, TypeScript, Leaflet",[144,190,191,194],{},[159,192,193],{},"Deployment",[159,195,196],{},"Docker, NVIDIA GPU",[15,198,199],{},"Map tiles are not pre-rendered; each zoom renders the requested index and colour scale on the fly, so switching from NDVI to NDRE does not mean waiting for a new job.",[10,201,203],{"id":202},"conclusion","Conclusion",[15,205,206,207,210],{},"PlantFarm Scan is our first large project that takes machine learning from a demo to a tool that runs on every flight. We call this approach ",[19,208,209],{},"Industrial AI",": a model trained on your data, measured on sites it never saw in training, then shipped as an application used every day. We are taking the same approach beyond agriculture, from map drafting to production lines.",[15,212,213,214,218,219,116],{},"If you have a similar need, see our ",[26,215,217],{"href":216},"\u002Fen\u002Fsolutions\u002Findustrial-ai","Industrial AI solution"," or ",[26,220,222],{"href":221},"\u002Fen\u002Fcontact","get in touch",[224,225,227],"h3",{"id":226},"related-posts","Related Posts",[229,230,231,236,242],"ul",{},[58,232,233],{},[26,234,235],{"href":114},"Walnut Crown Detection: Training a Custom YOLOv8-seg Model",[58,237,238],{},[26,239,241],{"href":240},"\u002Fen\u002Fblog\u002Fmultispectral-drone-ndvi-ndre-plant-health","Plant Health with Multispectral Drones: NDVI, NDRE and Flying It Right",[58,243,244],{},[26,245,246],{"href":130},"A Local LLM and RAG Agronomy Assistant",{"title":248,"searchDepth":249,"depth":249,"links":250},"",2,[251,252,253,254,255,256],{"id":12,"depth":249,"text":13},{"id":49,"depth":249,"text":50},{"id":100,"depth":249,"text":101},{"id":119,"depth":249,"text":120},{"id":135,"depth":249,"text":136},{"id":202,"depth":249,"text":203,"children":257},[258],{"id":226,"depth":259,"text":227},3,"PlantFarm Scan, which we built together with GETEK, finds every tree in multispectral drone flights and tracks its health through the season. What it solves and how it works.","md",{"date":263,"author":264,"readTime":265,"tags":266,"image":97,"translation":271},"2026-10-29","Amazeng Technical Team",6,[209,267,268,269,270,31],"Artificial Intelligence","Precision Agriculture","Drone","Computer Vision","plantfarm-scan-getek-ile-drone-ve-yapay-zeka-agac-analizi",true,"\u002Fen\u002Fblog\u002Fplantfarm-scan-drone-ai-tree-health-with-getek",{"title":5,"description":260},"en\u002Fblog\u002Fplantfarm-scan-drone-ai-tree-health-with-getek","DWCSS-3uZY4xfSD1ZD8pmWwccyEIH-VMdkOF7tqtO4c",1793875325672]