I am working on an object detection model for which I have training images with bounding box detail for different objects in the image. I am trying to generate a Gaussian blob for each of the bounding boxes. I can generate the Gaussian blob but it is not what I am expecting

ObjectBlob1133×288 28.7 KB

As you can see the blob has white patches as opposed to a solid blob with blurred edges.
I am using this piece of code to generate the blob:
if height < width: #Create blob of the highest dimension
        k_size = int(width)
    else:
        k_size = int(height)
kernel = cv2.getGaussianKernel(k_size, 0.3*((k_size-1)*0.5 - 1) + 0.8)
kernel = np.dot(kernel, kernel.T)
kernel *= 100

Is there any better way to do this?
TIA