Can I design forest with overlapping trees from a single tree tileset?

I have a tileset, that have individual tree tiles.

If I want to create a forest with overlapping trees. But at the same time I want to make sure that collisions are handled (the character cannot go beyond the base of tree but can walk behind the tree)

I am looking for something like this

But currently I am getting something like this if I do not manually add z index and use multiple layers which is tedious

I am new to Tiled, but it is really fun learning to use this tool. Your help is much appreciated. Thank you.

I’ve written on this topic previously in my Tiled tip sheet.
There are multiple possible methods, with different pros and cons depending on the exact nature of your trees.

For this tileset, with very large trees that probably need to be z-sorted at runtime and have shadows that need to overlap significantly, I would recommend going with a single large tile per tree. The most reliable way to do this currently would require you to rearrange the tileset so that it can be sliced up into equal-sized tiles of one tree each (so, the smaller trees would need padding).
It’s also possible to create an Image Collection with these trees instead (it’s possible to do this even with tiles from a single image like this, you don’t have to turn the trees into separate images to make an Image Collection), but not all engines support Image Collections, and per-tile image rect, the feature that allows you to create an Image Collection from a single image, were only added in Tiled 1.9 and is even less supported by existing loaders.

For the modular trees (looks like there are a few in there), you’d still have to use small tiles, and for those, pre-made tile stamps that auto-sort into layers might be best.