Kérdőív feldolgozó rendszer #4: Beüzemelés & négyzetek és válaszok felismerése

EmguCV használata a projektben

Legkönnyebben: NuGet-tel le lehet tölteni, bár a frissítés dátuma alapján, nem egy friss változat, közel fél évvel le van maradva a hivatalos kiadástól. (Changelog-ok alapján nekem ez is megfelel.)
NuGet-tel: Install-Package EmguCV, az alábbi package-ek lesznek még hozzáadva a projekthez: ZedGraph és OpenTK. Az EmguCV részéről pedig három fájl:Emgu.CV.UI.dll, Emgu.CV.UI.GL.dll, Emgu.CV.World.dll.

Add Reference-féle importálásnál pedig a fent már említett három fájlt beimportáljuk, illetve célszerű a ZedGraph-ot is mellékelni.

Képfelismerés

A programozás a Visual Studio 2015-ben, C# nyelvben történt. A példaprogram jelenleg felismeri a négyzeteket, kigyomlálja azokat, amelyeket esetleg kétszer ismert fel. (Például ha vastag a vonal vagy rossz minőségű a kép.)  A kód nagy része a hivatalos példából származik, de jónéhány változtatást eszközöltem rajta.

A program bal oldali képdobozában az eredeti, feldolgozásra váró kép jelenik meg. Ezután az Elemzés gombra kattintva megjelennek a program által talált négyzetek a jobb oldali dobozban.

Jobb oldali TextBoxban pedig az algoritmusom munkája látszik, megnézi, hogy a négyzetek közül melyek vannak bejelölve, illetve kiírja a négyzetek középpontjainak a koordinátáit. Amennyiben be van jelölve egy opció, akkor a válaszhoz tartozó négyzetet nem látja a képfelismerő, ahogy az a következő példán is látszik:

 

Továbbá már az érvénytelen választ (itt: egynél több van bejelölve) is képes kezelni. A válaszok kezelése (mi van bejelölve és mi nincs) lista segítségével van megvalósítva.

A négyzetfelismerést kipróbáltam létező kérdőíven is, mely kiváló eredményt hozott.

EREDETIKEP_KERDOIV