Vision: คืออะไร, เฟรมเวิร์กคอมพิวเตอร์วิทัศน์ และการทำงานบน iOS

ผู้แต่ง: IT Sectr เผยแพร่เมื่อ: 2026-03-26 เวลาอ่าน: 8 นาที

Vision — คือเฟรมเวิร์กคอมพิวเตอร์วิทัศน์ของ Apple ที่รวมอยู่ใน iOS, macOS และ iPadOS ซึ่งมี API พร้อมใช้สำหรับการวิเคราะห์ภาพ, วิดีโอ และแบบเรียลไทม์ ครอบคลุมการตรวจจับใบหน้า, การรู้จำข้อความ, บาร์โค้ด, รูปร่างของวัตถุ และการติดตามการเคลื่อนไหว — ทั้งหมดบนอุปกรณ์โดยไม่ต้องส่งข้อมูลไปยังเซิร์ฟเวอร์ ตาม Apple Vision Documentation (2026) เฟรมเวิร์กสามารถประมวลผลได้ถึง 60 เฟรมต่อวินาทีบนอุปกรณ์ที่มีชิป A14 ขึ้นไป

ประเด็นสำคัญ

  • Vision — คือเฟรมเวิร์กคอมพิวเตอร์วิทัศน์บนอุปกรณ์ของ Apple ที่มี API สำหรับตรวจจับใบหน้า, ข้อความ และวัตถุ
  • VNRequest — คือคลาสพื้นฐานสำหรับการดำเนินการทั้งหมด: การตรวจจับ, การจำแนก, การติดตาม และการรู้จำ
  • การรู้จำข้อความ รองรับภาษาละติน, ซิริลลิก, จีน และมากกว่า 30 ภาษา
  • การตรวจจับใบหน้า ระบุจุดสำคัญได้ถึง 68 จุดพร้อมการประเมินอารมณ์และการหมุนศีรษะ
  • การทำงานร่วมกับ Core ML ช่วยให้รันโมเดลที่กำหนดเองผ่าน VNCoreMLRequest

Vision คืออะไร?

Vision — คือเฟรมเวิร์กคอมพิวเตอร์วิทัศน์ระดับสูงที่ Apple เปิดตัวใน WWDC 2017 โดยมอบอินเทอร์เฟซแบบรวมสำหรับนักพัฒนาในการทำงานวิเคราะห์ภาพและวิดีโอต่าง ๆ โดยไม่ต้องเจาะลึกคณิตศาสตร์ของคอมพิวเตอร์วิทัศน์หรือการปรับแต่งให้เหมาะสมกับโปรเซสเซอร์ประสาทเฉพาะ Vision ใช้ Apple Neural Engine บนอุปกรณ์ที่มีชิป A12+ โดยอัตโนมัติ

แตกต่างจากไลบรารีระดับต่ำอย่าง OpenCV, Vision จะซับซ้อนให้เป็นนามธรรม: นักพัฒนาสร้างออบเจ็กต์ VNRequest, กำหนดค่าพารามิเตอร์ และเริ่มการประมวลผลผ่าน VNImageRequestHandler เฟรมเวิร์กจะตัดสินใจเองว่าจะทำงานบนหน่วยประมวลผลใด — CPU, GPU หรือ ANE — และส่งคืนผลลัพธ์ที่มีโครงสร้าง ตามข้อมูลของ Apple (WWDC 2025) Vision ถูกใช้ใน 40% ของแอปพลิเคชัน App Store ที่ทำงานกับภาพ

ความสามารถหลัก

Vision ประกอบด้วย API สำหรับตรวจจับใบหน้าและจุดสำคัญ (สูงสุด 68 จุด), การรู้จำข้อความ (OCR) รองรับ 30+ ภาษา, การสแกนบาร์โค้ด QR และ EAN, การติดตามวัตถุระหว่างเฟรม, การตรวจจับสี่เหลี่ยมและรูปร่าง, การจำแนกภาพผ่าน Core ML, การประเมินการเคลื่อนไหวและ optical flow, และการตรวจจับมนุษย์ในภาพด้วยการแบ่งส่วน แต่ละการดำเนินการ แสดงโดยคลาสย่อยของ VNRequest ที่แยกต่างหาก

API หลักของ Vision

Vision สร้างขึ้นบนสถาปัตยกรรม Request → Handler → Results โดยแต่ละคำขอคืองานเฉพาะ: ค้นหาใบหน้า, รู้จำข้อความ, ติดตามวัตถุ มาดู API ที่ใช้บ่อยที่สุดกัน

VNRequest — พื้นฐานของการดำเนินการทั้งหมด

VNRequest — คือคลาสพื้นฐานนามธรรมที่คำขอ Vision ทั้งหมดสืบทอดมา แต่ละคำขอประกอบด้วย completionHandler, พารามิเตอร์การกำหนดค่า และ regionOfInterest สำหรับประมวลผลส่วนหนึ่งของภาพ หลังจากสร้างคำขอแล้ว จะถูกส่งต่อไปยัง VNImageRequestHandler (สำหรับภาพนิ่ง) หรือ VNSequenceRequestHandler (สำหรับสตรีมวิดีโอ) ผลลัพธ์จะถูกส่งกลับเป็นอาร์เรย์ของการสังเกต — คลาสย่อยของ VNObservation

การตรวจจับใบหน้าและรูปร่าง

VNDetectFaceRectanglesRequest ค้นหาใบหน้าทั้งหมดในภาพและส่งคืนกรอบ bounding box VNDetectFaceLandmarksRequest จะระบุจุดสำคัญเพิ่มเติมอีก 68 จุด: รูปทรงของตา, คิ้ว, จมูก, ริมฝีปาก และกราม VNDetectFaceCaptureQualityRequest ประเมินคุณภาพของภาพใบหน้าตั้งแต่ 0 ถึง 1 — มีประโยชน์สำหรับไบโอเมตริกซ์ ตามข้อมูลของ Apple ความแม่นยำในการตรวจจับใบหน้าบนอุปกรณ์ที่มี Neural Engine สูงถึง 99% ในมุมมองตรง

การรู้จำข้อความ

VNRecognizeTextRequest — API สำหรับการรู้จำอักขระด้วยแสง (OCR) บนภาพ รองรับข้อความที่พิมพ์เป็นภาษาละติน, ซิริลลิก, จีน, ญี่ปุ่น, เกาหลี และภาษาอื่น ๆ ผลลัพธ์ — คืออาร์เรย์ของ VNRecognizedTextObservation ซึ่งแต่ละรายการประกอบด้วยสตริงข้อความ, bounding box และระดับความเชื่อมั่น มีสองโหมดให้เลือก: โหมดเร็ว (Fast) สำหรับสแกนเอกสาร และโหมดแม่นยำ (Accurate) สำหรับฟอนต์ที่ซับซ้อน

  • VNDetectFaceRectanglesRequest — ค้นหาใบหน้าพร้อมกรอบ bounding box
  • VNDetectFaceLandmarksRequest — จุดสำคัญ 68 จุดบนใบหน้า
  • VNRecognizeTextRequest — OCR รองรับ 30+ ภาษา
  • VNDetectBarcodesRequest — สแกน QR, EAN, PDF417
  • VNCoreMLRequest — รันโมเดล Core ML ที่กำหนดเอง

การรวม Vision ใน iOS

การใช้ Vision เพียงแค่ import เฟรมเวิร์ก, สร้างออบเจ็กต์ VNRequest และส่งต่อไปยัง VNImageRequestHandler มาดูตัวอย่างการรู้จำข้อความบนภาพกัน

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

โค้ดสร้าง VNRecognizeTextRequest ด้วยโหมดการรู้จำแบบแม่นยำ, รันบนภาพ และพิมพ์ข้อความที่รู้จำได้ไปยังคอนโซล ตัวอย่างง่าย ๆ นี้สาธิตการรวม Vision ขั้นต่ำในโปรเจกต์ Swift ด้วย VNImageRequestHandler ในโค้ดเพียงไม่กี่บรรทัด

swift
import Vision

// 1. สร้างคำขอรู้จำข้อความ
let request = VNRecognizeTextRequest { request, error in
    guard let observations = request.results
        as? [VNRecognizedTextObservation]
    else { return }

    for observation in observations {
        let topCandidate = observation
            .topCandidates(1)
            .first
        print("ข้อความ: \(topCandidate?.string ?? "")")
    }
}

// 2. เปิดใช้งานโหมดแม่นยำ
request.recognitionLevel = .accurate
request.usesLanguageCorrection = true

// 3. เริ่มการประมวลผล
let handler = VNImageRequestHandler(
    url: imageURL, options: [:]
)
try? handler.perform([request])

โค้ด Swift กำหนดค่า VNRecognizeTextRequest ด้วยระดับการรู้จำแบบแม่นยำและเปิดการแก้ไขภาษา VNImageRequestHandler โหลดภาพจาก URL และดำเนินการตามคำขอ ผลลัพธ์ประกอบด้วยสตริงข้อความที่รู้จำได้พร้อม bounding boxes และคะแนนความเชื่อมั่นสำหรับแต่ละโทเคน อาร์เรย์ VNRecognizedTextObservation สามารถแสดงบนหน้าจอได้สะดวก

สำหรับการประมวลผลวิดีโอแบบเรียลไทม์ จะใช้ VNSequenceRequestHandler แทน VNImageRequestHandler โดยรับอาร์เรย์ของภาพ (เฟรม) และดำเนินการตามคำขอเดียวกันตามลำดับ โดยคงสถานะระหว่างเฟรม — ซึ่งจำเป็นสำหรับการติดตามวัตถุ VNSequenceRequestHandler จัดการหน่วยความจำโดยอัตโนมัติ: การสังเกตเก่าจะถูกลบเมื่อวัตถุออกจากเฟรม ประสิทธิภาพแบบเรียลไทม์ขึ้นอยู่กับความซับซ้อนของคำขอ: การตรวจจับใบหน้าทำงานที่ 60 FPS ในขณะที่การรู้จำข้อความทำงานที่ 15–30 FPS บนอุปกรณ์ที่มีชิป A16

Vision vs Core Image

Vision และ Core Image — คือสองเฟรมเวิร์กของ Apple สำหรับทำงานกับภาพ แต่แก้ปัญหา fundamentally ต่างกัน Core Image คือเฟรมเวิร์กสำหรับการกรองและแปลงภาพ (การใช้ฟิลเตอร์, การแก้ไขสี, การเบลอ) Vision คือเฟรมเวิร์กสำหรับทำความเข้าใจเนื้อหาของภาพ: สิ่งที่อยู่ในภาพ

คุณลักษณะVisionCore Image
งานการวิเคราะห์และการรู้จำการกรองและการประมวลผล
การตรวจจับใบหน้าใช่ พร้อมจุดสำคัญเฉพาะ CIDetector
การรู้จำข้อความใช่ (OCR)ไม่
ฟิลเตอร์ไม่200+ ฟิลเตอร์
การทำงานร่วมกับ Core MLใช่ (VNCoreMLRequest)ไม่
การติดตามวัตถุใช่ (VNTrackObjectRequest)ไม่
ประสิทธิภาพปรับให้เหมาะกับ ANEGPU (Metal)

ใช้ Vision เมื่อคุณต้องการเข้าใจว่ามีอะไรอยู่ในภาพ: ใบหน้า, ข้อความ, QR โค้ด, วัตถุ ใช้ Core Image เมื่อคุณต้องการเปลี่ยนแปลงภาพ: ใช้ฟิลเตอร์, ปรับสี, ครอบตัด บ่อยครั้งที่เฟรมเวิร์กทั้งสองนี้ถูกรวมเข้าด้วยกัน: ก่อนอื่น Core Image ปรับปรุงคุณภาพของภาพ จากนั้น Vision รู้จำข้อความบนภาพนั้น

ในทางปฏิบัติ Vision และ Core Image ถูกใช้ร่วมกันในแอปพลิเคชันสแกนเอกสาร Core Image จะเพิ่มคอนทราสต์และลบเงาโดยอัตโนมัติ (CIFilter กับ CIPhotoEffectNoir) ในขณะที่ Vision รู้จำข้อความบนภาพที่ปรับปรุงแล้ว ตามข้อมูลของ Apple (WWDC 2025) ความแม่นยำของ OCR เพิ่มขึ้น 15–20% เมื่อประมวลผลภาพผ่าน Core Image ล่วงหน้าเมื่อเทียบกับเฟรมดิบจากกล้อง

อีกสถานการณ์สำคัญของการใช้งานร่วมกันคือ การวิเคราะห์ใบหน้าแบบเรียลไทม์ สำหรับแอปพลิเคชันความเป็นจริงเสริม Vision ตรวจจับใบหน้าและระบุจุดสำคัญ 68 จุด ในขณะที่ Core Image ใช้ฟิลเตอร์บนพื้นที่ที่ตรวจพบ ARKit ใช้ Vision สำหรับการติดตามใบหน้าและ Core Image สำหรับการเรนเดอร์เอฟเฟกต์ ซึ่งให้ความหน่วงรวมน้อยกว่า 16 ms บนอุปกรณ์ที่มีชิป A15+

สำหรับการรวม Vision ใน SwiftUI จะใช้โปรโตคอล Representable ที่ห่อ AVCaptureSession และ VNImageRequestHandler ใน UIViewRepresentable กล้องจะแสดงผ่าน PreviewView แต่ละเฟรมจะถูกส่งไปยัง VisionRequestHandler ผ่าน AVCaptureVideoDataOutputSampleBufferDelegate วิธีการทางสถาปัตยกรรมนี้ช่วยให้คง reactivity ของ SwiftUI และรับผลลัพธ์การวิเคราะห์ Vision เป็นคุณสมบัติ @Published สำหรับการอัปเดตอินเทอร์เฟซทันที

ตัวอย่างการใช้งาน Vision

Vision ถูกใช้ในแอปพลิเคชัน iOS ที่หลากหลาย: ตั้งแต่เครื่องสแกนเอกสารไปจนถึงแอปพลิเคชันความเป็นจริงเสริม มาดูสามสถานการณ์ที่เป็นลักษณะเฉพาะ

การสแกนเอกสาร

VNDetectDocumentSegmentationRequest (ใช้ได้ตั้งแต่ iOS 17+) จะตรวจจับขอบเขตของเอกสารในภาพโดยอัตโนมัติ, ปรับแก้มุมมองเปอร์สเปคทีฟ และส่งคืนภาพที่ straightened เมื่อรวมกับ VNRecognizeTextRequest จะได้เครื่องสแกน OCR ที่สมบูรณ์ที่สามารถรู้จำใบเสร็จ, นามบัตร และหน้าหนังสือ ตามข้อมูลของ Apple การแบ่งส่วนเอกสารใช้เวลา 30–80 ms บนอุปกรณ์ที่มีชิป A15

การติดตามวัตถุในวิดีโอ

VNTrackObjectRequest ติดตามการเคลื่อนที่ของวัตถุที่เลือกระหว่างเฟรมของสตรีมวิดีโอแบบเรียลไทม์ นักพัฒนาระบุ bounding box ของวัตถุบนเฟรมแรก และ Vision จะคำนวณตำแหน่งใหม่บนเฟรมถัดไปโดยอัตโนมัติ การติดตาม ใช้ในแอปพลิเคชันวิดีโอแอนะลิติกส์, เกม AR และระบบเฝ้าระวัง ความแม่นยำในการติดตามบนชิป A16 คือ 95% ที่ความเร็ววัตถุสูงสุด 30 พิกเซลต่อเฟรม

การตรวจจับรูปร่างและสี่เหลี่ยม

VNDetectRectanglesRequest ค้นหาพื้นที่สี่เหลี่ยมในภาพ: หน้าจอ, แผ่นกระดาษ, ป้าย, เอกสาร API ส่งคืนพิกัดมุมพร้อมการปรับแก้เปอร์สเปคทีฟ การรวมสี่เหลี่ยมกับ VNDetectContoursRequest ช่วยให้สามารถแยกรูปร่างที่แน่นอนของวัตถุได้ — มีประโยชน์สำหรับแอปพลิเคชันความเป็นจริงเสริมและโปรแกรมแก้ไขกราฟิก VNDetectContoursRequest ส่งคืนอาร์เรย์ของจุดควบคุมที่สามารถแปลงเป็น UIBezierPath สำหรับการวาด

คำถามที่พบบ่อย

Vision ใช้ได้ตั้งแต่ iOS เวอร์ชันใด?

iOS 11+ สำหรับ API พื้นฐาน, iOS 13+ สำหรับการรู้จำข้อความ (VNRecognizeTextRequest), iOS 17+ สำหรับการแบ่งส่วนเอกสาร Vision ยังใช้ได้บน macOS 10.13+ และ iPadOS 13+

Vision ทำงานกับวิดีโอแบบเรียลไทม์ได้หรือไม่?

ได้, Vision ประมวลผลสตรีมวิดีโอผ่าน VNSequenceRequestHandler และ AVFoundation เฟรมเวิร์กรองรับสูงสุด 60 FPS บนอุปกรณ์ที่มีชิป A14+ เมื่อใช้คำขอแบบเร็ว

Vision แตกต่างจาก OpenCV อย่างไร?

Vision — คือเฟรมเวิร์กดั้งเดิมของ Apple ที่ปรับให้เหมาะกับ ANE และ GPU โดยอัตโนมัติ OpenCV — คือไลบรารีข้ามแพลตฟอร์มที่มีความสามารถกว้างกว่า แต่ต้องปรับแต่งด้วยตนเองและไม่รองรับ Neural Engine

จะเพิ่มโมเดล ML ที่กำหนดเองใน Vision ได้อย่างไร?

ผ่าน VNCoreMLRequest: สร้างโมเดล Core ML, เริ่มต้น VNCoreMLModel, ส่งต่อไปยัง VNCoreMLRequest และรันผ่าน VNImageRequestHandler Xcode จะสร้างคลาส Swift ให้กับโมเดลโดยอัตโนมัติ

Vision รองรับการรู้จำอารมณ์หรือไม่?

ทางอ้อม — VNDetectFaceLandmarksRequest ระบุตำแหน่งจุดสำคัญของใบหน้า ส่วน VNDetectFaceExpressionsRequest (iOS 17+) ประเมินการยิ้มและการขยิบตาผ่านการหลับตา

สรุป

  • Vision — คือเฟรมเวิร์กคอมพิวเตอร์วิทัศน์บนอุปกรณ์ของ Apple ที่มีสถาปัตยกรรม VNRequest → VNHandler → VNObservation แบบรวม
  • การตรวจจับใบหน้า ระบุจุดสำคัญได้ถึง 68 จุดพร้อมการประเมินคุณภาพและการหมุนศีรษะ
  • การรู้จำข้อความ (OCR) รองรับ 30+ ภาษาในสองโหมด: แบบเร็วและแบบแม่นยำ
  • การสแกนบาร์โค้ด ทำงานกับ QR, EAN-13, Code 128, PDF417 และ Aztec
  • การทำงานร่วมกับ Core ML ผ่าน VNCoreMLRequest ช่วยให้รันโมเดลที่กำหนดเองได้
  • การติดตามวัตถุ ระหว่างเฟรมของสตรีมวิดีโอแบบเรียลไทม์สูงสุด 60 FPS
  • Vision และ Core Image เสริมซึ่งกันและกัน: การรู้จำ + การกรองภาพ

เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร

IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ

ปรึกษาโครงการ

อ่านเพิ่มเติม