Bezplatné Swift OCR API pro čtení čísel z ID a bankovních karet
Open Source špičková Swift knihovna pro optické rozpoznávání znaků (OCR) pro rozpoznávání a čtení čísel z ID karet, bankovních karet, čísel domů a dokumentů pomocí bezplatného Swift API.
Co je Evil?
Pro vývojáře softwaru, kteří vytvářejí aplikace pro platformy Apple, je integrace optického rozpoznávání znaků (OCR) do iOS a macOS aplikací zjednodušena pomocí open-source knihovny Evil. Toto řešení založené na Swiftu využívá výpočetní sílu zařízení pomocí Vision frameworku od Apple a poskytuje vysoce úrovňové API pro extrakci textu z obrázků s pozoruhodnou efektivitou. Navrženo jako nástroj zaměřený na vývojáře, Evil zjednodušuje složitý proces přidání robustních OCR funkcí, což vám umožní rychle rozpoznávat text ze zdrojů jako jsou bankovní karty, ID karty nebo čísla domů přímo ve vašich Swift projektech.
Knihovna Evil vyniká při extrakci strukturovaných dat kombinací výkonu nativního pro Swift s výjimečnou flexibilitou díky integraci modelů Core ML (.mlmodel). Tato architektura založená na modelech umožňuje vývojářům nasadit předtrénované modely pro okamžité použití nebo trénovat a implementovat vlastní modely přizpůsobené konkrétním úkolům rozpoznávání. Nabídkou jednoduchých API spolu s flexibilním nasazením modelů poskytuje Evil zjednodušený, vysoce výkonný OCR zážitek, který je ideální pro vytváření sofistikovaných funkcí extrakce textu na zařízení ve vašich mobilních a desktopových aplikacích pro iOS a macOS.
Začínáme s Evil
Doporučený způsob instalace Evil je pomocí CocoaPods. Použijte prosím následující příkaz pro hladkou instalaci.
Install Evil Library via CocoaPods
pod 'evil'Install Evil Library via GitHub
git clone https://github.com/getomni-ai/zerox.git You can also install it manually; download the latest release files directly from GitHub repository.
Rozpoznávejte čísla na obrázcích pomocí Swift API
Postavený kompletně ve Swiftu, Evil podporuje jak iOS (11.0+), tak macOS (10.13+), což z něj činí univerzální nástroj pro vývoj nativních aplikací v ekosystému Apple. Open source knihovna Evil nabízí kompletní podporu pro rozpoznávání čísel ze strukturovaných dat ve Swift aplikacích. Hlavním cílem knihovny Evil je usnadnit rozpoznávání textu z obrázků, jako jsou bankovní karty, ID karty a dokonce čísla domů, co nejjednodušším způsobem pro vývojáře softwaru. Jakmile inicializujete knihovnu Evil, rozpoznávání textu z obrázku je tak jednoduché jako zavolat metodu recognize; následující příklad ukazuje, jak to provést.
How to Recognize Numbers from an Image via Swift API?
let image: Recognizable = // Your image (e.g., a UIImage or CGImage)
let result = evil?.recognize(image)
print(result)
// This returns the OCR result—typically the detected number or text as a string
// Run OCR on Input Image
if let result = evil?.recognize(myImage) {
print("Detected number: \(result)")
}
Pokročilá manipulace s pamětí
Open source Swift knihovna pro optické rozpoznávání znaků Evil umožňuje vývojářům softwaru přímo přistupovat k paměti a manipulovat s ní uvnitř Swift aplikací. To ji činí užitečnou pro ladění, hackování her nebo bezpečnostní testování. Zde je užitečný příklad, který demonstruje čtení a zápis do konkrétní paměťové adresy pomocí Swift příkazů.
How to Read and Write to a Specific Memory Location via Swift API?
#include
int main() {
uintptr_t address = 0x00400000; // Example memory address
uint8_t value = evil_read_memory(address); // Read a byte
evil_write_memory(address, 0x90); // Write a NOP (0x90) instruction
return 0;
}
Flexibilní načítání modelu přes URL
Open source knihovna Evil nabízí několik způsobů, jak načíst vaše Core ML modely. Můžete je zabalit přímo do aplikace nebo, aby se snížila počáteční velikost stažení aplikace, můžete knihovnu nakonfigurovat tak, aby během běhu stahovala modely ze vzdáleného serveru. Pro udržení malé velikosti balíčku aplikace můžete hostovat soubor .mlmodel na serveru a nechat knihovnu Evil, aby jej během běhu stáhla.
How to Access Model from a Remote URL via Swift API?
let downloadURL = URL(string: "https://your-server.com/ChineseIDCard.mlmodel")!
let chineseIDCard = Recognizer.custom(name: "ChineseIDCard", model: downloadURL, needComplie: true, processor: Recognizer.cropChineseIDCardNumberArea)
let evil = try? Evil(recognizer: chineseIDCard)