I'm compositing a 3D plant over a picture of a street, inspired by a tutorial from a guy creating really good ones. I want the plant to receive the shadows from the buildings and cast its own shadow onto the street.
I didn't find a shadow catcher option in Eevee so I'm rendering with Cycles. Lighting consists only in a 360° image for the World background, oriented to match the shadows of the background image (settings). The background image is used as camera background for preview and also used as input in the compositor (settings).
To create building shadows on the plant I've a silhouette with a material invisible to the camera but able to cast shadows (material). To receive the plant shadow on the walls and ground I have a shadow catcher (settings). Unfortunately it also receives the silhouette shadow (shaping the shadow catcher to exclude the silhouette is likely not possible since the shadow limit is not clean).
This works as anticipated, except the shadows from the shadow catcher don't blend correctly:
Closer view:
The two aspects which are not satisfactory are the darkness of the shadows, but also the difference in blurring, my shadows are way too clean.
I'm using Blender 3.1. I know only the basics for render engine and compositor. I read this answer valid for 2.8, but I don't see a Shadow Pass in 3.1.
Any suggestion for blending correctly the shadows into the background picture (luminance and blurring)?
Simplified file: