Skip to main content

📄 OCR ใบทะเบียนราษฎร์ไทย

1 ICต่อหน้า
v3.0 ใช้งานได้ ธ.ค. 2567 POST /v3/store/ocr/civil-registeration-certificate

ยินดีต้อนรับสู่ API OCR ใบทะเบียนราษฎร์ไทย โซลูชันที่ขับเคลื่อนด้วย AI พัฒนาโดย บริษัท ไอแอพพ์เทคโนโลยี จำกัด สำหรับการแยกข้อมูลจากเอกสารทะเบียนราษฎร์ไทย เอกสารนี้จะช่วยให้คุณสามารถผสานรวมและใช้งานบริการ OCR ของเราได้อย่างมีประสิทธิภาพ

ทดลองใช้งาน!

ทดลองใช้ AI Demo

เข้าสู่ระบบหรือสร้างบัญชีฟรีเพื่อใช้งาน AI Demo และสำรวจ API ที่ทรงพลังของเรา

รับ 50 เครดิตฟรี (IC) เมื่อสมัครสมาชิก!

โปรโมชันหมดเขต 31 ธันวาคม 2568

Example Images (Click to try)

Example 1
Try Demo

เริ่มต้นใช้งาน

  1. ข้อกำหนดเบื้องต้น

    • API key จาก ไอแอพพ์เทคโนโลยี
    • รูปภาพเอกสารทะเบียนราษฎร์ไทย
    • รูปแบบไฟล์ที่รองรับ: JPEG, JPG, PNG, PDF
    • ขนาดไฟล์สูงสุด: 10MB
  2. เริ่มต้นใช้งานอย่างรวดเร็ว

    • การประมวลผลที่รวดเร็ว (5-10 วินาทีต่อเอกสาร)
    • การแยกข้อความที่มีความแม่นยำสูง
    • รองรับรูปแบบไฟล์หลายประเภท
  3. คุณสมบัติหลัก

    • การแยกฟิลด์โดยละเอียด รวมถึง:
      • ข้อมูลส่วนบุคคล (ชื่อ, รหัส, เพศ, สัญชาติ)
      • รายละเอียดการเกิด (วันที่, อายุ)
      • ข้อมูลครอบครัว (ชื่อและสัญชาติของบิดามารดา)
      • รายละเอียดที่อยู่อาศัย (ที่อยู่, สถานะ, การลงทะเบียน)
      • ข้อมูลเมตาของเอกสาร (วันที่, หมายเหตุ, ข้อมูลนายทะเบียน)
    • รองรับเอกสารหน้าเดียว
    • ตัวเลือกในการส่งคืนข้อความ OCR ดั้งเดิมและรูปภาพที่ประมวลผลแล้ว
    • รูปแบบการตอบสนอง JSON ที่ยืดหยุ่น
  4. ความปลอดภัยและการปฏิบัติตามข้อกำหนด

    • เป็นไปตาม GDPR และ PDPA
    • จุดเชื่อมต่อ API ที่ปลอดภัย
    • ไม่มีการเก็บรักษาข้อมูลหลังการประมวลผล
วิธีขอรับ API Key?

กรุณาไปที่หน้า การจัดการ API Key เพื่อดู API key ที่คุณมีอยู่ หรือขอรับ API key ใหม่

จุดเชื่อมต่อ API

จุดเชื่อมต่อเมธอดคำอธิบายราคา
/v3/store/ocr/civil-registeration-certificate
/ocr/v3/civil-registeration-certificate
POSTแยกข้อมูลจากใบทะเบียนราษฎร์ไทย1 IC ต่อหน้า

ตัวอย่าง

นี่คือตัวอย่างใบทะเบียนราษฎร์ไทยและข้อมูลที่แยกออกมา:

ใบทะเบียนราษฎร์

คำขอ:

cURL

curl -X POST https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file \
-H apikey: YOUR_API_KEY \
-F file=@/path/to/document.jpg \
-F return_image=false \
-F return_ocr=false

การตอบสนอง:

{
"message": "success",
"processed": {
"header": "(ท้องถิ่นเขตยานนาวา) ท.ร. 14/1",
"title": "แบบรับรองรายการทะเบียนราษฎร จากฐานข้อมูลการทะเบียน\nสำนักทะเบียนกลาง กรมการปกครอง กระทรวงมหาดไทย",
"nationalIdNumber": "X-XXXX-XXXXX-XX-X",
"houseRegistrationNumber": "XXXX-XXXXXX-X",
"name": "นายสXXXXX XXXXXXXXXXX",
"gender": "ชาย",
"nationality": "ไทย",
"dateOfBirth": "8 XXXXXXX 2498",
"age": 64,
"residentialStatus": "เจ้าบ้าน",
"mothersName": "XXXXX",
"mothersNationality": "จีน",
"fathersName": "XXXXX",
"fathersNationality": "จีน",
"address": "XXX XXXXXXX XXX แขวงตลิ่งชัน เขตตลิ่งชัน กรุงเทพมหานคร",
"registrationOffice": "ท้องถิ่นเขตตลิ่งชัน",
"moveInDate": "28 เดือน XXXXXXX พ.ศ. 2537",
"additionalNotes": "บุคคลนี้ถูกจำหน่ายชื่อจากทะเบียนบ้านเนื่องจากตาย เมื่อ 14 XXXXXXXX 2562",
"remarks": "คัดรับรองตามคำร้องที่ ๗๙๐๘/๒๕๖๗ ลงวันที่ ๒ กันยายน ๒๕๖๗",
"lastUpdated": "วันที่ 2 เดือน กันยายน พ.ศ. 2567",
"footer": {
"text": "รับรองว่าเป็นรายการจากฐานข้อมูลการทะเบียนราษฎร",
"date": "2 เดือน กันยายน พ.ศ. 2567",
"registrar": "นายอิทธิพัทธ์ เล็กชลยุทธ"
}
},
"confidence": {
"header": 0.95,
"title": 0.95,
"nationalIdNumber": 0.95,
"houseRegistrationNumber": 0.9,
"name": 0.95,
"gender": 0.95,
"nationality": 0.95,
"dateOfBirth": 0.9,
"age": 0.95,
"residentialStatus": 0.9,
"mothersName": 0.9,
"mothersNationality": 0.9,
"fathersName": 0.9,
"fathersNationality": 0.9,
"address": 0.95,
"registrationOffice": 0.95,
"moveInDate": 0.9,
"additionalNotes": 0.9,
"remarks": 0.9,
"lastUpdated": 0.9,
"footer": 0.9
},
"process_ms": 8115
}

คุณสมบัติและความสามารถ

คุณสมบัติหลัก

  1. การประมวลผลเอกสาร

    • การแยกข้อความและรู้จำฟิลด์ที่มีความแม่นยำสูง
    • รองรับภาษาไทย
    • รองรับรูปแบบเอกสารที่พิมพ์
    • เวลาประมวลผลรวดเร็ว 5-10 วินาทีต่อเอกสาร
    • รองรับหลายรูปแบบ (JPEG, JPG, PNG, PDF)
    • การจัดการเอกสารหน้าเดียว
    • ตัวเลือกในการส่งคืนข้อความ OCR ดั้งเดิมและรูปภาพที่ประมวลผลแล้ว
    • การประมวลผลที่เป็นไปตาม GDPR และ PDPA
  2. การแยกข้อมูล

    • รูปแบบการตอบสนอง JSON ที่ยืดหยุ่นพร้อมการแยกฟิลด์โดยละเอียด

ฟิลด์ที่รองรับ

ฟิลด์ประเภทคำอธิบาย
headerStringประเภทเอกสารและหมายเลขแบบฟอร์ม
titleStringชื่อเอกสารอย่างเป็นทางการ
nationalIdNumberStringหมายเลขบัตรประชาชนไทย 13 หลัก
houseRegistrationNumberStringรหัสทะเบียนบ้าน
nameStringชื่อเต็มของบุคคล
genderStringเพศของบุคคล
nationalityStringสัญชาติของบุคคล
dateOfBirthStringวันเกิดในรูปแบบไทย
ageNumberอายุปัจจุบัน
residentialStatusStringสถานะในครัวเรือน
mothersNameStringชื่อเต็มของมารดา
mothersNationalityStringสัญชาติของมารดา
fathersNameStringชื่อเต็มของบิดา
fathersNationalityStringสัญชาติของบิดา
addressStringที่อยู่ปัจจุบัน
registrationOfficeStringชื่อสำนักทะเบียน
moveInDateStringวันที่ย้ายเข้าที่อยู่ปัจจุบัน
additionalNotesStringข้อมูลเพิ่มเติม
remarksStringหมายเหตุอย่างเป็นทางการ
lastUpdatedStringวันที่อัปเดตล่าสุด
footerObjectประกอบด้วยข้อความรับรอง วันที่ และข้อมูลนายทะเบียน
confidenceObjectคะแนนความเชื่อมั่น (0-1) สำหรับแต่ละฟิลด์ที่แยกออกมา ค่าที่สูงขึ้นบ่งชี้ถึงความน่าเชื่อถือในการแยกข้อมูลที่มากขึ้น

เอกสารอ้างอิง API

การรู้จำใบทะเบียนราษฎร์ไทย

มีจุดเชื่อมต่อสองจุดสำหรับการประมวลผลใบทะเบียนราษฎร์ไทย:

1. การอัปโหลดไฟล์

POST https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file

ส่วนหัวคำขอ

ชื่อประเภทจำเป็นคำอธิบาย
apikeystringใช่API key ของคุณ

ส่วนเนื้อหาคำขอ (multipart/form-data)

พารามิเตอร์ประเภทจำเป็นคำอธิบาย
filefileใช่รูปภาพเอกสาร (JPEG, PNG) หรือเอกสาร PDF
return_imagebooleanไม่รวมถึงรูปภาพที่เข้ารหัส base64 ในการตอบสนอง (ค่าเริ่มต้น: false)
return_ocrbooleanไม่รวมถึงข้อความ OCR ดั้งเดิมในการตอบสนอง (ค่าเริ่มต้น: false)

รูปแบบการตอบสนอง

{
"message": "success",
"raw": {
"image": "string", // เข้ารหัส Base64 เฉพาะเมื่อ return_image=true
"text": "string" // เฉพาะเมื่อ return_ocr=true
},
"processed": {
"header": "string",
"title": "string",
"nationalIdNumber": "string",
"houseRegistrationNumber": "string",
"name": "string",
"gender": "string",
"nationality": "string",
"dateOfBirth": "string",
"age": "number",
"residentialStatus": "string",
"mothersName": "string",
"mothersNationality": "string",
"fathersName": "string",
"fathersNationality": "string",
"address": "string",
"registrationOffice": "string",
"moveInDate": "string",
"additionalNotes": "string",
"remarks": "string",
"lastUpdated": "string",
"footer": {
"text": "string",
"date": "string",
"registrar": "string"
}
},
"confidence": {
"header": "number",
"title": "number",
"nationalIdNumber": "number",
"houseRegistrationNumber": "number",
"name": "number",
"gender": "number",
"nationality": "number",
"dateOfBirth": "number",
"age": "number",
"residentialStatus": "number",
"mothersName": "number",
"mothersNationality": "number",
"fathersName": "number",
"fathersNationality": "number",
"address": "number",
"registrationOffice": "number",
"moveInDate": "number",
"additionalNotes": "number",
"remarks": "number",
"lastUpdated": "number",
"footer": "number"
},
"process_ms": "number"
}

การจัดการข้อผิดพลาด

สถานะรหัสคำอธิบาย
400BAD_REQUESTพารามิเตอร์หรือรูปแบบไฟล์ไม่ถูกต้อง
401UNAUTHORIZEDAPI key ไม่ถูกต้องหรือไม่พบ
404NOT_FOUNDจุดเชื่อมต่อไม่ถูกต้อง
500INTERNAL_SERVER_ERRORการประมวลผลล้มเหลว

2. รูปภาพ Base64

POST https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64

ส่วนหัวคำขอ
ชื่อประเภทจำเป็นคำอธิบาย
apikeystringใช่API key ของคุณ
ส่วนเนื้อหาคำขอ

คุณสามารถส่งข้อมูล base64 ได้ทั้งในรูปแบบ JSON หรือ form data:

รูปแบบ JSON:

{
"base64_string": "string", // ข้อมูลรูปภาพเข้ารหัส Base64
"return_image": false, // ไม่บังคับ
"return_ocr": false // ไม่บังคับ
}

รูปแบบ Form Data:

พารามิเตอร์ประเภทจำเป็นคำอธิบาย
base64_stringstringใช่ข้อมูลรูปภาพเข้ารหัส Base64
return_imagebooleanไม่รวมถึงรูปภาพที่เข้ารหัส base64 ในการตอบสนอง (ค่าเริ่มต้น: false)
return_ocrbooleanไม่รวมถึงข้อความ OCR ดั้งเดิมในการตอบสนอง (ค่าเริ่มต้น: false)
รูปแบบการตอบสนอง

เหมือนกับจุดเชื่อมต่อการอัปโหลดไฟล์

ตัวอย่างโค้ด

Curl

curl -X POST https://api.iapp.co.th/v3/store/ocr/civil-registeration-certificate \
-H "apikey: YOUR_API_KEY" \
-F "file=@/path/to/file.jpg"

Python (อัปโหลดไฟล์)

import requests
apiKey = 'YOUR_API_KEY'
filePath = '/path/to/civil-registeration-certificate.jpg'
url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file"

headers = {'apikey': apiKey}
files = {'file': ('civil-registeration-certificate.jpg', open(filePath, 'rb'), 'image/jpeg')}
data = {'return_image': 'false', 'return_ocr': 'false'}

response = requests.post(url, headers=headers, files=files, data=data)
print(response.json())

Python (Base64)

import requests
import base64

apiKey = 'YOUR_API_KEY'
filePath = '/path/to/civil-registeration-certificate.jpg'
url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64"

# อ่านไฟล์รูปภาพและแปลงเป็น base64
with open(filePath, 'rb') as image_file:
base64_string = base64.b64encode(image_file.read()).decode()

headers = {
'apikey': apiKey,
'Content-Type': 'application/json'
}

data = {
'base64_string': base64_string,
'return_image': False,
'return_ocr': False
}

response = requests.post(url, headers=headers, json=data)
print(response.json())

Javascript (อัปโหลดไฟล์)

const axios = require("axios")
const FormData = require("form-data")
const fs = require("fs")

const apiKey = "YOUR_API_KEY"
const filePath = "/path/to/civil-registeration-certificate.jpg"
const url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file"

const form = new FormData()
form.append("file", fs.createReadStream(filePath))
form.append("return_image", "false")
form.append("return_ocr", "false")

try {
const response = await axios.post(url, form, {
headers: {
...form.getHeaders(),
apikey: apiKey,
},
})
return response.data
} catch (error) {
throw error
}

Javascript (Base64)

const axios = require("axios")
const fs = require("fs")

const apiKey = "YOUR_API_KEY"
const filePath = "/path/to/civil-registeration-certificate.jpg"
const url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64"

// อ่านไฟล์รูปภาพและแปลงเป็น base64
const base64String = fs.readFileSync(filePath, { encoding: "base64" })

const data = {
base64_string: base64String,
return_image: false,
return_ocr: false,
}

try {
const response = await axios.post(url, data, {
headers: {
"Content-Type": "application/json",
apikey: apiKey,
},
})
return response.data
} catch (error) {
throw error
}

PHP (อัปโหลดไฟล์)

$url = 'https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file';
$apiKey = 'YOUR_API_KEY';
$filePath = '/path/to/civil-registeration-certificate.jpg';

$headers = array(
'apikey: ' . $apiKey
);

$postFields = array(
'file' => new CURLFile($filePath),
'return_image' => 'false',
'return_ocr' => 'false'
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$response = curl_exec($ch);
curl_close($ch);

echo $response;

PHP (Base64)

$url = 'https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64';
$apiKey = 'YOUR_API_KEY';
$filePath = '/path/to/civil-registeration-certificate.jpg';

// อ่านไฟล์รูปภาพและแปลงเป็น base64
$base64String = base64_encode(file_get_contents($filePath));

$data = array(
'base64_string' => $base64String,
'return_image' => false,
'return_ocr' => false
);

$headers = array(
'Content-Type: application/json',
'apikey: ' . $apiKey
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$response = curl_exec($ch);
curl_close($ch);

echo $response;

Swift (อัปโหลดไฟล์)

import Foundation

let url = URL(string: "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file")!
let filePath = "/path/to/civil-registeration-certificate.jpg"
let apiKey = "YOUR_API_KEY"

var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue(apiKey, forHTTPHeaderField: "apikey")

let boundary = UUID().uuidString
request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")

var body = Data()
body.append("--\(boundary)\r\n".data(using: .utf8)!)
body.append("Content-Disposition: form-data; name=\"file\"; filename=\"civil-registeration-certificate.jpg\"\r\n".data(using: .utf8)!)
body.append("Content-Type: image/jpeg\r\n\r\n".data(using: .utf8)!)
body.append(try! Data(contentsOf: URL(fileURLWithPath: filePath)))
body.append("\r\n--\(boundary)\r\n".data(using: .utf8)!)
body.append("Content-Disposition: form-data; name=\"return_image\"\r\n\r\nfalse\r\n".data(using: .utf8)!)
body.append("--\(boundary)\r\n".data(using: .utf8)!)
body.append("Content-Disposition: form-data; name=\"return_ocr\"\r\n\r\nfalse\r\n".data(using: .utf8)!)
body.append("--\(boundary)--\r\n".data(using: .utf8)!)

request.httpBody = body

let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else {
print("Error: \(error?.localizedDescription ?? "Unknown error")")
return
}
print(String(data: data, encoding: .utf8)!)
}

task.resume()

Swift (Base64)

import Foundation

let url = URL(string: "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64")!
let filePath = "/path/to/civil-registeration-certificate.jpg"
let apiKey = "YOUR_API_KEY"

// อ่านไฟล์รูปภาพและแปลงเป็น base64
guard let imageData = try? Data(contentsOf: URL(fileURLWithPath: filePath)) else {
print("Error reading file")
return
}
let base64String = imageData.base64EncodedString()

let parameters: [String: Any] = [
"base64_string": base64String,
"return_image": false,
"return_ocr": false
]

var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.setValue(apiKey, forHTTPHeaderField: "apikey")
request.httpBody = try? JSONSerialization.data(withJSONObject: parameters)

let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else {
print("Error: \(error?.localizedDescription ?? "Unknown error")")
return
}
print(String(data: data, encoding: .utf8)!)
}

task.resume()

Kotlin (อัปโหลดไฟล์)

import okhttp3.*
import java.io.File

val client = OkHttpClient()
val apiKey = "YOUR_API_KEY"
val filePath = "/path/to/civil-registeration-certificate.jpg"
val url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file"

val file = File(filePath)
val requestBody = MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("file", file.name, RequestBody.create(MediaType.parse("image/jpeg"), file))
.addFormDataPart("return_image", "false")
.addFormDataPart("return_ocr", "false")
.build()

val request = Request.Builder()
.url(url)
.post(requestBody)
.addHeader("apikey", apiKey)
.build()

client.newCall(request).enqueue(object : Callback {
override fun onFailure(call: Call, e: IOException) {
e.printStackTrace()
}

override fun onResponse(call: Call, response: Response) {
response.use {
if (!response.isSuccessful) throw IOException("Unexpected code $response")
println(response.body()?.string())
}
}
})

Kotlin (Base64)

import okhttp3.*
import java.io.File
import android.util.Base64
import org.json.JSONObject

fun processBase64Image() {
val client = OkHttpClient()
val apiKey = "YOUR_API_KEY"
val filePath = "/path/to/civil-registeration-certificate.jpg"
val url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64"

// อ่านไฟล์และแปลงเป็น base64
val file = File(filePath)
val bytes = file.readBytes()
val base64String = Base64.encodeToString(bytes, Base64.DEFAULT)

val json = JSONObject()
json.put("base64_string", base64String)
json.put("return_image", false)
json.put("return_ocr", false)

val requestBody = RequestBody.create(
MediaType.parse("application/json"),
json.toString()
)

val request = Request.Builder()
.url(url)
.post(requestBody)
.addHeader("Content-Type", "application/json")
.addHeader("apikey", apiKey)
.build()

client.newCall(request).enqueue(object : Callback {
override fun onFailure(call: Call, e: IOException) {
e.printStackTrace()
}

override fun onResponse(call: Call, response: Response) {
response.use {
if (!response.isSuccessful) throw IOException("Unexpected code $response")
println(response.body()?.string())
}
}
})
}

Java (อัปโหลดไฟล์)

import okhttp3.*;
import java.io.File;
import java.io.IOException;

public class Main {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient();

String apiKey = "YOUR_API_KEY";
String url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file";
String filePath = "/path/to/civil-registeration-certificate.jpg";

File file = new File(filePath);
RequestBody requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("file", file.getName(), RequestBody.create(MediaType.parse("image/jpeg"), file))
.addFormDataPart("return_image", "false")
.addFormDataPart("return_ocr", "false")
.build();

Request request = new Request.Builder()
.url(url)
.post(requestBody)
.addHeader("apikey", apiKey)
.build();

client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}

@Override
public void onResponse(Call call, Response response) throws IOException {
if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
System.out.println(response.body().string());
}
});
}
}

Java (Base64)

import okhttp3.*;
import java.io.File;
import java.io.IOException;
import java.util.Base64;
import java.nio.file.Files;
import org.json.JSONObject;

public class Main {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient();

String apiKey = "YOUR_API_KEY";
String url = "https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64";
String filePath = "/path/to/civil-registeration-certificate.jpg";

try {
// อ่านไฟล์และแปลงเป็น base64
byte[] fileContent = Files.readAllBytes(new File(filePath).toPath());
String base64String = Base64.getEncoder().encodeToString(fileContent);

JSONObject json = new JSONObject();
json.put("base64_string", base64String);
json.put("return_image", false);
json.put("return_ocr", false);

RequestBody requestBody = RequestBody.create(
MediaType.parse("application/json"),
json.toString()
);

Request request = new Request.Builder()
.url(url)
.post(requestBody)
.addHeader("Content-Type", "application/json")
.addHeader("apikey", apiKey)
.build();

client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}

@Override
public void onResponse(Call call, Response response) throws IOException {
if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
System.out.println(response.body().string());
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}

Dart (อัปโหลดไฟล์)

import 'dart:convert';
import 'dart:io';
import 'package:http/http.dart' as http;

String url = 'https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/file';
String filePath = '/path/to/civil-registeration-certificate.jpg';
String apiKey = 'YOUR_API_KEY';

void main() async {
var url = Uri.parse(url);
var request = http.MultipartRequest('POST', url)
..headers['apikey'] = apiKey
..files.add(await http.MultipartFile.fromPath('file', filePath))
..fields['return_image'] = 'false'
..fields['return_ocr'] = 'false';

var response = await request.send();

if (response.statusCode == 200) {
var responseData = await response.stream.bytesToString();
print(responseData);
} else {
print('Error: ${response.statusCode}');
}
}

Dart (Base64)

import 'dart:convert';
import 'dart:io';
import 'package:http/http.dart' as http;

String url = 'https://api.iapp.co.th/ocr/v3/civil-registeration-certificate/base64';
String filePath = '/path/to/civil-registeration-certificate.jpg';
String apiKey = 'YOUR_API_KEY';

void main() async {
var url = Uri.parse(url);
var request = http.MultipartRequest('POST', url)
..headers['apikey'] = apiKey
..fields['return_image'] = 'false'
..fields['return_ocr'] = 'false';

// อ่านไฟล์รูปภาพและแปลงเป็น base64
File file = File(filePath);
List<int> fileBytes = await file.readAsBytes();
String base64String = base64Encode(fileBytes);

request.fields['base64_string'] = base64String;

var response = await request.send();

if (response.statusCode == 200) {
var responseData = await response.stream.bytesToString();
print(responseData);
} else {
print('Error: ${response.statusCode}');
}
}

ข้อจำกัดและแนวทางปฏิบัติที่ดีที่สุด

ข้อจำกัด

  • ขนาดไฟล์สูงสุด: 10MB
  • ภาษาที่รองรับ: ไทย
  • ไฟล์ PDF: รองรับหน้าเดียวเท่านั้น
  • ขีดจำกัดอัตรา: 10 คำขอต่อวินาทีต่อ API key

แนวทางปฏิบัติที่ดีที่สุด

  1. ตรวจสอบให้แน่ใจว่าคุณภาพของรูปภาพดีเยี่ยมเพื่อผลลัพธ์ที่ดีที่สุด
  2. ใช้รูปแบบ JPEG หรือ PNG สำหรับรูปภาพ
  3. ใช้การจัดการข้อผิดพลาดสำหรับคำขอที่ล้มเหลว
  4. แคชการตอบสนองเมื่อประมวลผลเอกสารเดียวกันหลายครั้ง
  5. ตั้งค่าเวลารอที่เหมาะสมสำหรับไฟล์ขนาดใหญ่

ความแม่นยำและประสิทธิภาพ

ความแม่นยำโดยรวม

จากการทดสอบชุดข้อมูลของเราซึ่งประกอบด้วยใบทะเบียนราษฎร์ไทย 1,000 ฉบับ:

ประเภทฟิลด์ความแม่นยำ (%)หมายเหตุ
หมายเลข ID99.5%หมายเลขบัตรประชาชนและหมายเลขทะเบียนบ้าน
ชื่อ99.2%ชื่อบุคคลและชื่อบิดามารดา
วันที่98.7%วันเกิดและวันที่ลงทะเบียน
ที่อยู่97.8%รายละเอียดที่อยู่เต็ม
โดยรวม98.8%ค่าเฉลี่ยถ่วงน้ำหนัก

ความเร็วในการประมวลผล

  • เวลาประมวลผลเฉลี่ย: 5-10 วินาที
  • เปอร์เซ็นไทล์ที่ 95: 12 วินาที
  • เวลาประมวลผลสูงสุด: 15 วินาที

ปัจจัยที่มีผลต่อความแม่นยำ

  1. คุณภาพรูปภาพ

    • ความละเอียด (แนะนำขั้นต่ำ 300 DPI)
    • สภาพแสง
    • ความคมชัดและรายละเอียดของรูปภาพ
  2. สภาพเอกสาร

    • ความเสียหายทางกายภาพ
    • สีซีดจางหรือการสึกหรอ
    • การแก้ไขด้วยลายมือ
  3. รูปแบบเอกสาร

    • รูปแบบมาตรฐาน: ความแม่นยำ 99%+
    • เค้าโครงที่ไม่ใช่มาตรฐาน: ความแม่นยำ 95%+
    • ลายมือ: ความแม่นยำ 90%+

ประวัติ

โมเดลของเราได้รับการฝึกฝนอย่างต่อเนื่องด้วยข้อมูลใหม่ๆ เพื่อปรับปรุงความแม่นยำ:

เวอร์ชันวันที่เผยแพร่ความแม่นยำการปรับปรุงที่สำคัญ
3.02567-12-2796.5%เวอร์ชันพื้นฐาน

ราคา

ชื่อบริการ AI APIราคาOn-Premise
OCR ใบทะเบียนราษฎร์ไทย1 IC/หน้าติดต่อ