Dnes bola pri použití aforgr.net na spracovanie obrazu hlásená nasledujúca chyba:
Nepodporovaný pixelový formát zdrojového alebo šablónového obrazu Pixelový formát nie je podporovaný pre zdrojový ani šablónový obraz
Našiel som riešenie na zahraničnom fóre:
Trieda implementuje vyčerpávajúci algoritmus párovania šablón, ktorý vykonáva kompletné skenovanie zdrojového obrázka a porovnáva každý pixel s príslušným pixelom šablóny.
Trieda spracováva iba obrázky v odtieňoch sivej 8 bpp a farebné 24 bpp. Takže toto sú formáty obrázkov, ktoré musíte použiť.
Ako ste žiadali, na konverziu do konkrétneho pixelového formátu môžete urobiť toto:
verejný statický Bitmap ConvertToFormat (tento obrázok, formát PixelFormat) { Bitmapová kópia = nová bitmapa (obrázok. Šírka, obraz. výška, formát); using (Graphics gr = Graphics.FromImage(copy)) { gr. DrawImage(obrázok, nový Obdĺžnik(0, 0, kopírovať. Šírka, rozumiem. Výška)); } vrátiť kópiu; } Čínsky preklad je nasledovný: Class implementuje kompletný algoritmus na párovanie šablón pre skenované obrázky, porovnáva každý pixel a porovnáva ho so šablónou zodpovedajúceho pixelu.
Trieda dokáže pracovať iba s odtieňmi šedej a farebnými obrázkami24 8 BPP BPP. Takže toto sú formáty obrázkov, ktoré musíte použiť. Podľa potreby je možné konvertovať do konkrétneho pixelového formátu takto: Verejný statický bitmapový konverttoformát (tento obrázok, pixelový formát)
{ Kopírovanie bitmapy = nová bitmapa (image.width, image. výška, formát); Použite (grafický GR = grafický obrázok (kópia). )
{ gr.drawimage(obrázok, nový obdĺžnik) (0,0, šírka, výška kopírovať. Rozumiem. ));
} Vráťte sa k kópii;
}
|