Rozpoznawanie znaków optycznych (OMR) to proces pobierania danych z dokumentu, który ma określony typ oznaczeń. Oznaczenia są wykonywane przez ludzi i odczytywane przez oprogramowanie do odczytu arkuszy OMR lub skaner. Jednak OMR jest ważnym elementem automatyzacji tworzenia i oceny arkuszy odpowiedzi i szablonów OMR. Dlatego ten wpis na blogu przedstawi bibliotekę OMR dla programistów Java. Aspose.OMR for Java oferuje funkcje umożliwiające programowe zbudowanie czytnika arkuszy OMR w Javie. Ponadto przejdziemy również przez narzędzie OMR online, więc przeczytaj ten artykuł dokładnie.
W tym wpisie na blogu omówimy następujące sekcje:
- Aspose.OMR for Java - instalacja biblioteki OMR
- Czytnik arkuszy OMR w Javie – przykład kodu
- Narzędzie OMR online
Aspose.OMR for Java - Instalacja biblioteki OMR
Istnieje kompleksowy przewodnik na temat instalacji. Możesz więc pobrać plik JAR lub użyć następujących konfiguracji Maven:
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://releases.aspose.com/java/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-omr</artifactId>
<version>23.12</version>
</dependency>
</dependencies>
Czytnik arkuszy OMR w Javie — przykład kodu
Teraz możemy rozpocząć tworzenie oprogramowania do odczytu arkuszy OMR, wykonując poniższe kroki:
- Utwórz obiekt klasy OmrEngine.
- Wywołaj metodę getTemplateProcessor, aby uzyskać procesor szablonów.
- Ustaw niestandardowy próg do wykorzystania w ponownym obliczeniu, którego zakres wynosi (0 do 100).Niższa wartość - im mniej czarnych pikseli potrzeba, aby bańka została uznana za wypełnioną i odwrotnie.
- Przeglądaj obrazy.
- Rozpoznaj obraz wywołując metodę recognizeImage.
- Wywołaj metodę getCsv, aby uzyskać ciąg eksportowanego pliku CSV i zapisać go w folderze wyjściowym.
- Wywołaj metodę recalculate, aby ponownie obliczyć wyniki rozpoznawania z niestandardowym progiem.
- Zapisz przeliczone wyniki w pliku CSV.
Poniższy fragment kodu pokazuje, jak programowo opracować czytnik arkuszy OMR w języku Java:
package com.example;
import com.aspose.omr.OmrEngine;
import com.aspose.omr.RecognitionResult;
import com.aspose.omr.TemplateProcessor;
import java.io.FileOutputStream;
import java.io.PrintWriter;
// Czytnik arkuszy OMR w Javie - Arkusz OMR PNG
public class Main {
public static void main(String[] args) throws Exception {
// Zdefiniuj katalogi robocze.
String[] UserImages = new String[] { "/Sheet.png" };
String[] UserImagesNoExt = new String[] { "/files/" };
String templatePath = "/Sheet.omr";
// Utwórz obiekt klasy OmrEngine.
OmrEngine engine = new OmrEngine();
// Wywołaj metodę getTemplateProcessor, aby uzyskać procesor szablonów.
TemplateProcessor templateProcessor = engine.getTemplateProcessor(templatePath);
// Ustaw niestandardowy próg do wykorzystania w ponownym obliczeniu, którego zakres wynosi (0 do 100).Niższa wartość - im mniej czarnych pikseli potrzeba, aby bańka została uznana za wypełnioną i odwrotnie.
int CustomThreshold = 0;
// Przeglądaj obrazy.
for (int i = 0; i < UserImages.length; i++)
{
String image = UserImages[i];
String imagePath = image;
// Rozpoznaj obraz wywołując metodę recognizeImage.
RecognitionResult result = templateProcessor.recognizeImage(imagePath);
// Wywołaj metodę getCsv, aby uzyskać ciąg eksportowanego pliku CSV i zapisać go w folderze wyjściowym.
String stringRes = result.getCsv();
String outputName = UserImagesNoExt[i] + ".csv";
PrintWriter wr = new PrintWriter(new FileOutputStream(outputName), true);
wr.println(stringRes);
// Wywołaj metodę recalculate, aby ponownie obliczyć wyniki rozpoznawania z uwzględnieniem niestandardowego progu.
templateProcessor.recalculate(result, CustomThreshold);
stringRes = result.getCsv();
// Zapisz przeliczone wyniki w pliku CSV.
outputName = UserImagesNoExt[i] + "_recalculated.csv";
wr = new PrintWriter(new FileOutputStream(outputName), true);
wr.println(stringRes);
}
}
}
Wynik można zobaczyć na poniższym obrazku:
Narzędzie OMR online
Oprócz biblioteki OMR dla Java, Aspose.OMR obsługuje czytnik arkuszy OMR online. To bezpłatne narzędzie jest więc wysoce bezpieczne i sprawnie skanuje arkusze odpowiedzi w formie bąbelków. Przede wszystkim nie jest wymagane tworzenie konta ani subskrypcja. Można więc z niego korzystać, po prostu przeciągając i upuszczając pliki.
Arkusz OMR PNG - Uzyskaj bezpłatną licencję
Teraz możesz skorzystać z bezpłatnej licencji tymczasowej, aby wypróbować bibliotekę OMR poza ograniczeniami ewaluacyjnymi.
Wniosek
To doprowadza nas do końca tego wpisu na blogu. Omówiliśmy, czym jest OMR i jak wdrożyć budowę czytnika arkuszy OMR w Javie. Podobnie, możesz wykorzystać tę bibliotekę OMR, aby zaoszczędzić czas i siłę roboczą, ponieważ możesz opracować własne oprogramowanie czytnika arkuszy OMR. Ponadto możesz odwiedzić repozytorium GitHub, aby rozpocząć rozwój. Ponadto możesz odwiedzić dokumentację i API odniesienia, aby dowiedzieć się więcej o Aspose.OMR for Java.
Pomoc jest dostępna
Swoje pytania i wątpliwości możesz zadać na naszym forum.
Często zadawane pytania – FAQ
Czy możemy sprawdzić arkusz OMR online?
Do sprawdzania arkuszy odpowiedzi OMR możesz użyć tego online czytnika arkuszy OMR.
Jak odczytać arkusz OMR w Javie?
Aspose.OMR for Java to biblioteka OMR oferująca bogate funkcje do programowego odczytywania arkuszy odpowiedzi OMR. Zobacz ten link, aby dowiedzieć się, jak to zrobić.