Replies: 2 comments 2 replies
-
|
And just following up on the alive/dead classifier, looks like that model is just overfitted. There's only 16 crops from TEAK in the DeepTreeAttention repo and when I run the model on those it classifies all of them as alive even though there are 3 dead ones. Looks like I have some labeling in my future :) |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for opening a discussion, let's run through some points here.
This strikes me as a preprocessing error in your pipeline, we know that can't be right, looking at our NEON predictions there are millions of dead predictions in the landscape and the model looks very reasonable. Be careful not to assume its the model, its almost certainly in the way you are feeding the images in.
Let's seperate the xarray and the alive dead model issues, if you are using NEON tiles, open with rasterio and we can make a minimum example. The overfit is in the calibration scores, not the model performance.
Not quite right, that repo is species classification, and contains no data besides testing. Thousands of dead trees were used, including many from TEAK, looking at DeepTreeAttention, which is a HSI model, will just distract you.
This is almost certainty where you went wrong What about the documentation made you need to develop your own dataset structure, let's walk through that together. Overall we've got alot going on in this discussion. Let's make a new discussion on cropmodel and dataset structure (might need to wait till 2.0 and pull from the github repo not pypi, we made it a bit better and faster) |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I'm interested in using deepforest to identify alive/dead trees in the Lower Teakettle NEON site. Overall this package is very impressive! I was able to run segmentation and start classifying trees from scratch in about an hour. However, I had two pain points in this notebook that I wanted to bring up:
As it stands the deepforest API doesn't work well with imagery held as an xarray
DataArray. Functions will either fire a warning, or in the case ofpredict_tile, fail completely becauseBoundingBoxDatasetexpects a non-null image path. I managed to hack a workaround by iterating over crops myself, but I think this is a missed opportunity because xarray works with so many backends. So if deepforest can work with xarray, then it can work with lazy dask arrays, zarr, imagery on cloud storage, STAC, and so on. There's been some success already in linking xarray with PyTorch models here.The alive/dead classifier doesn't seem to give reasonable results. I've tested it all over TEAK and every tree is classified as alive with confidence >99% even though there's some clear gray-stage mortality where I'm running it. I saw the note that the classifier is probably overfitted, but TEAK is in the training data in this repo so I thought it would be ok. Not really relevant to the title but I'm including this here in case there's some gotcha about channel order or image transformation that I'm missing. If I end up having to make my own dataset then oh well.
I'd be happy to contribute changes related to 1, and I'm hoping that there might be something I'm missing related to 2. Thanks for your great work on this package!
Beta Was this translation helpful? Give feedback.
All reactions