Aspose.OCR 클라우드 패밀리

Aspose.OCR Cloud를 사용하면 클라우드에서 광학 문자 인식 및 문서 스캐닝을 수행할 수 있습니다. 가장 일반적으로 사용되는 래스터 이미지 형식(BMP, JPG, GIF, PNG, TIFF)의 텍스트를 읽고 인식할 수 있습니다. 코드 줄이 적은 이미지에서 문자 인식을 수행합니다. 특정 이미지를 Aspose.OCR Cloud API에 전달하기만 하면 인식된 텍스트가 포함된 응답이 반환됩니다. 이 API는 영어, 프랑스어, 스페인어 텍스트를 인식할 수 있으며 XML 또는 JSON 형식으로 응답을 반환합니다. 이 문서에서는 Java SDK를 사용하여 이미지에서 OCR을 수행하는 단계에 대해 설명합니다.

인식 프로세스 동안 문자와 관련 글꼴 정보를 읽을 수 있습니다. 전체 이미지에서 OCR을 수행하거나 X 및 Y 좌표를 제공하여 래스터 이미지의 특정 부분에서 수행할 수 있습니다. 또한 하드웨어 리소스 종속성이 없으므로 자동 기울기 수정과 자동 및 수동 문서 레이아웃 감지 작업을 고속으로 수행할 수 있습니다.

플랫폼 독립적

클라우드 API는 운영 체제, 데이터베이스 시스템 또는 개발 언어와 완전히 독립적이며 HTTP를 지원하는 모든 언어와 플랫폼을 사용하여 API와 상호 작용할 수 있습니다. 그러나 클라이언트 코드를 수동으로 작성하는 것은 어렵고 오류가 발생하기 쉬우며 시간이 많이 걸릴 수 있습니다. 따라서 Java 언어를 사용하는 고객을 지원하기 위해 언어별 Aspose.OCR Cloud Java SDK가 게시되었습니다. SDK를 사용하면 요청을 만들고 응답을 처리하는 동안 많은 하위 수준의 세부 사항을 처리하고 특정 프로젝트 요구 사항에 맞는 코드 작성에 집중할 수 있습니다.

URL 이미지에서 텍스트 인식

Cloud OCR API는 웹 URL을 통해 제공되는 이미지 파일에 대한 텍스트 인식 작업을 직접 수행하는 옵션을 제공합니다. 특정 클라우드 스토리지에 독점적으로 업로드할 필요는 없습니다.

자바 코드 조각

private static OcrApi api;
private static final String url = "https://upload.wikimedia.org/wikipedia/commons/2/2f/Book_of_Abraham_FirstPage.png";

public static void main(String args[]) throws IOException {
  try {
	  		setUpConfig();
  } catch (Exception e) {
    // TODO 자동 생성된 catch 블록
    e.printStackTrace();
  }
  String text;

  text = recognizeByURL();
  System.out.println(text);
}

// URL에 호스팅된 이미지에서 텍스트를 인식하는 방법
private static String recognizeByURL() {
  try {
    api = new ApiClient().createService(OcrApi.class);
    Call<ResponseBody> call = api.RecognizeFromUrl(url);
    Response<ResponseBody> res = call.execute();
    ResponseBody answer = res.body();

    com.aspose.ocr.OCRResponse ocrResponse = com.aspose.ocr.OCRResponse.Deserialize(answer);
    String text = ocrResponse.text;

    return text;
    } catch (IOException e) {
      e.printStackTrace();
      return "";
    }
}

private static void setUpConfig() throws Exception {
  Configuration.setAPP_SID("xxxxx");
  Configuration.setAPI_KEY("xxxxx");

  Configuration.setAuthPath("https://api.aspose.cloud/connect/token");
  Configuration.setBasePath("https://api.aspose.cloud/v3.0");
  Configuration.setUserAgent("WebKit");
  Configuration.setTestSrcDir("sourceTest");
  Configuration.setTestDstDir("destTest");

  if (Configuration.getAPI_KEY().isEmpty() || Configuration.getAPP_SID().isEmpty()) {
      System.out.println("! Error: Setup AppSID & AppKey in BaseTest Configuration");
      throw new Exception("Setup AppSID & AppKey in BaseTest Configuration");
    }
}

저장소의 이미지에서 텍스트 인식

자바 코드 조각

private static OcrApi api;

public static void main(String args[]) throws IOException {
  try {
	  		setUpConfig();
  } catch (Exception e) {
    // TODO 자동 생성된 catch 블록
    e.printStackTrace();
  }
  String text;

  text = recognizeByContent();
  System.out.println(text);
}

private static String recognizeByContent() {
  try {
      File f = new File(Configuration.getTestSrcDir(), "0.png");
      if (!f.exists()) {
      return "Error: recognizeByContentLang: file not found";
      }

      api = new ApiClient().createService(OcrApi.class);
      RequestBody requestBody = RequestBody.create(f,MediaType.parse("application/octet-stream"));
      Call<ResponseBody> call = api.RecognizeFromContent(requestBody);
      Response<ResponseBody> res = call.execute();

      ResponseBody answer = res.body();
      com.aspose.ocr.OCRResponse ocrResponse = com.aspose.ocr.OCRResponse.Deserialize(answer);
      String text = ocrResponse.text;

      return text;

  } catch (IOException e) {
      e.printStackTrace();
      return "";
  }
}

private static void setUpConfig() throws Exception {
  Configuration.setAPP_SID("xxxxx");
  Configuration.setAPI_KEY("xxxxx");

  Configuration.setAuthPath("https://api.aspose.cloud/connect/token");
  Configuration.setBasePath("https://api.aspose.cloud/v3.0");
  Configuration.setUserAgent("WebKit");
  Configuration.setTestSrcDir("sourceTest");
  Configuration.setTestDstDir("destTest");

  if (Configuration.getAPI_KEY().isEmpty() || Configuration.getAPP_SID().isEmpty()) {
      System.out.println("! Error: Setup AppSID & AppKey in BaseTest Configuration");
      throw new Exception("Setup AppSID & AppKey in BaseTest Configuration");
    }
}

cURL 명령

Cloud API는 cURL 명령을 통해서도 액세스할 수 있으며, 마찬가지로 Aspose.OCR Cloud도 cURL 명령을 통해서도 액세스할 수 있습니다. 그러나 API에 액세스하려면 개인화된 클라이언트 자격 증명을 기반으로 JWT 액세스 토큰을 생성해야 합니다. JWT 액세스 토큰 생성을 위해 다음 명령을 실행하세요.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

JWT 토큰이 생성되면 다음 명령을 사용하여 이미지에 OCR을 수행하세요.

curl "https://api.aspose.cloud/v3.0/ocr/MyImage.png/recognize?language=1" \
-X GET \
-H  "accept: application/json" \
-H  "authorization: Bearer <jwt token>"

요청 URL

https://api.aspose.cloud/v3.0/ocr/MyImage.png/recognize?language=1

응답 기관

{
  "text": "MOORE STEPHENS",
  "code": 200
}

결론

이 문서에서는 이미지에서 OCR을 수행하는 방법에 대한 세부 정보를 논의했습니다. 또한 cURL 명령을 사용하여 이미지에서 광학 문자 인식 작업을 수행하는 옵션을 살펴보았습니다. SDK의 전체 소스 코드는 GitHub에서 사용할 수 있습니다. 마찬가지로 제품 Documentation을 탐색하여 API에 대해 자세히 알아보는 것이 좋습니다.

관련기사