I am not sure if you are using python, or GUI and which one. I can provide you a solution with arcpy or ArcMap
It might be as simple as classification of rasters for the values. You can convert it to 0/1 raster and add both raster (or multiply them).
from arcpy.sa import *
rasterA = r'path_to_raster'
rasterB = r'path_to_raster'
con_rasterA = Con(rasterA >= 0.5, 1, 0) #if raster > 50%, convert it to 1 else 0.
con_rasterB = Con(rasterA >= 0.5, 1, 0) #if raster > 50%, convert it to 1 else 0.
result_add = con_rasterA + con_rasterB
## where value is 2, it means match, else no match
result_multiply = con_rasterA * con_rasterB
## where value is 1, it is match, else 0
After that, just simply get all pixels with non-0 or 2 value (depend on method). For example with
Build Raster Attribtue Table
In QGIS you can use Raster Calculator where in expression, you can do something like:
("RasterB2@1" > 0.5) * 1 + ("RasteA@1" > 0.5) * 1
Save the output and it should be the same.
Bonus: Converting to polygon would also work. But! You must not generalize the dataset. In Arcgis (https://pro.arcgis.com/en/pro-app/tool-reference/conversion/raster-to-polygon.htm):
simplify must be False
This should not be an issue in QGIS (GDAL) which converts it as real pixel.
Edit: Since you are using ArcGIS, it can be done with built in raster calculator (with Spatial Analyst extension).
Con("RasterA.tif">0.5,1,0) + Con("RasterB.tif">0.5,1,0)
And as output whatever you want.