Currently ExhaustiveTemplateMatching.ProcessImage only supports 8bpp or 24bpp.
Many sources produce 32bpp images.
Looks simple and straight forward to use pixelSize of 4 in the case of 32bpp.
This code worked for 32bpp images tested:
int pixelSize = PixelSize(image.PixelFormat);
private static int PixelSize(PixelFormat pixelFormat)
{
switch (pixelFormat)
{
case PixelFormat.Format8bppIndexed: // 8 bits per pixel
return 1;
case PixelFormat.Format24bppRgb: // 8 bits per color (Red Green Blue)
return 3;
case PixelFormat.Format32bppRgb: // 8 bits per color (Red Green Blue)
case PixelFormat.Format32bppArgb: // 8 bits per color (Alpha Red Green Blue )
case PixelFormat.Format32bppPArgb: // 8 bits per color (Alpha Red Green Blue premultiplied
return 4;
default:
throw new UnsupportedImageFormatException("Unsupported image pixel format.");
}
}
Original issue reported on code.google.com by commenti...@gmail.com on 4 Mar 2015 at 3:30
Original issue reported on code.google.com by
commenti...@gmail.com
on 4 Mar 2015 at 3:30Attachments: