What is meant by product of two images? I would like to compute the product of two images. I tried with the code below. But the result is not like I expected. Can you tell me where is the problem in my code?

https://ibb.co/Njc8w3b

for (int i = 0; i &lt; ImageWidth; i++)
{
    for (int j = 0; j &lt; ImageHeight; j++)
    {
        PixelValueFirstImage = Giris1.GetPixel(i, j); 
        PixelValueSecondImage = Giris2.GetPixel(i, j);
        Greyscale1 = Convert.ToInt16(PixelValueFirstImage.R * 0.3 + PixelValueFirstImage.G * 0.58 + PixelValueFirstImage.B * 0.12); //Converting RGB to grayscale
        Greyscale1 = Convert.ToDouble((Greyscale1 - 0) / (255 - 0)); // scaling between 0-1
        Greyscale = Convert.ToInt16(PixelValueSecondImage.R * 0.3 + PixelValueSecondImage.G * 0.58 + PixelValueSecondImageB * 0.12); //Converting RGB to grayscale
        Greyscale = Convert.ToDouble((Greyscale - 0) / (255 - 0)); // scaling between 0-1
        product = Greyscale * Greyscale1; // result of product
        product =(255*product)  ; //scaling between 0-255
        OutputImage.SetPixel(i, j, Color.FromArgb((int)product, (int)cproduct, (int)product);
    }
}

```
Multiplication of two signals is formally called as modulation; one of them is modulating the other.

In image processing most typically this will be called masking, when one of the images is a special selective mask for pixels.

However, when neither of the images is a mask, then their multiplication will blend (mix) them into each other according to their bright and dark regions...