এই ডকুমেন্টে আপনার প্রকল্পগুলিকে গুগল মোবাইল ভিশন (GMV) থেকে অ্যান্ড্রয়েডে ML কিটে স্থানান্তর করার জন্য আপনার যে পদক্ষেপগুলি নিতে হবে তা অন্তর্ভুক্ত করা হয়েছে।
সামগ্রিক API পরিবর্তনগুলি
এই পরিবর্তনগুলি সমস্ত API-তে প্রযোজ্য:
- GMV API গুলি
SparseArray<T>ফলাফল সিঙ্ক্রোনাসভাবে ফেরত দেয়। ML Kit API গুলি অ্যাসিঙ্ক্রোনাসভাবে ফলাফল ফেরত দিতে Google Play পরিষেবা Task API ব্যবহার করে। - GMV API সারফেসে
isOperational()কল ব্যবহার করে নির্দেশ করে যে কোনও মডিউল সফলভাবে ডাউনলোড হয়েছে এবং ব্যবহারের জন্য প্রস্তুত কিনা। ML Kit-এর এমন কোনও পদ্ধতি নেই। যদি কোনও মডিউল ডাউনলোড না করা হয় তবে ML Kit একটিMlKitException.UNAVAILABLEব্যতিক্রম ছুঁড়ে দেয়। আপনি এই ব্যতিক্রমটি ধরতে পারেন এবং পরবর্তী ফ্রেমটি প্রক্রিয়া করতে পারেন অথবা একটি টাইমআউট সেট করে বর্তমান ফ্রেম দিয়ে পুনরায় চেষ্টা করতে পারেন। - GMV পদ্ধতিতে ইনপুট দেওয়ার জন্য
Frameব্যবহার করা হয়। ML কিটInputImageব্যবহার করে। - GMV একাধিক সনাক্তকরণ এবং ফলাফল ফিল্টারিং সম্পাদনের জন্য
MultiDetector,MultiProcessorএবংFocusingProcessorফ্রেমওয়ার্ক প্রদান করে। ML Kit এই ধরনের প্রক্রিয়া প্রদান করে না, তবে ইচ্ছা করলে ডেভেলপার একই কার্যকারিতা প্রয়োগ করতে পারে।
গ্রেডল আমদানি আপডেট করুন
নিম্নলিখিত টেবিল অনুসারে, আপনার মডিউল (অ্যাপ-লেভেল) গ্র্যাডেল ফাইলে ML কিট অ্যান্ড্রয়েড লাইব্রেরির জন্য নির্ভরতা আপডেট করুন, যা সাধারণত app/build.gradle হয়:
| এপিআই | জিএমভি আর্টিফ্যাক্ট | এমএল কিট আর্টিফ্যাক্ট |
|---|---|---|
| ফেসডিটেক্টর | com.google.android.gms:play-services-vision:xxx | com.google.android.gms:play-services-mlkit-face-detection:17.1.0 |
| বারকোড ডিটেক্টর | com.google.android.gms:play-services-vision:xxx | com.google.android.gms:play-services-mlkit-barcode-scanning:18.3.1 |
| টেক্সট রিকগনিশন | com.google.android.gms:play-services-vision:xxx | com.google.android.gms:play-services-mlkit-text-recognition:19.0.1 |
| ক্যামেরাসোর্স | com.google.android.gms:play-services-vision:xxx | com.google.mlkit:camera:16.0.0-beta3 |
API পরিবর্তনগুলি
এই বিভাগটি প্রতিটি ভিশন API-এর জন্য সংশ্লিষ্ট GMV এবং ML কিট ক্লাস এবং পদ্ধতি বর্ণনা করে এবং API কীভাবে শুরু করতে হয় তা দেখায়।
ফেসডিটেক্টর
এই উদাহরণে দেখানো হিসাবে ইনিশিয়ালাইজেশনটি পুনরায় কোড করুন:
জিএমভি
detector = new FaceDetector.Builder(context) .setMode(FaceDetector.ACCURATE_MODE) .setLandmarkType(FaceDetector.ALL_LANDMARKS) .setClassificationType(FaceDetector.ALL_CLASSIFICATIONS) .build();
এমএল কিট
FaceDetectorOptions options = new FaceDetectorOptions.Builder() .setPerformanceMode(FaceDetectorOptions.PERFORMANCE_MODE_ACCURATE) .setLandmarkMode(FaceDetectorOptions.LANDMARK_MODE_ALL) .setClassificationMode(FaceDetectorOptions.CLASSIFICATION_MODE_ALL) .build(); detector = FaceDetection.getClient(options);
নিম্নলিখিত ক্লাস এবং পদ্ধতির নাম পরিবর্তন করুন:
android.gms.vision.face | mlkit.vision.face |
|---|---|
FaceDetector | FaceDetector |
SparseArray<Face> detect(Frame frame) | Task<List<Face>> process(@NonNull InputImage image) |
FaceDetector.Builder.setClassificationType(int classificationType) | FaceDetectorOptions.Builder. setClassificationMode(int classificationMode) |
NO_CLASSIFICATIONS, ALL_CLASSIFICATIONS | CLASSIFICATION_MODE_NONE , CLASSIFICATION_MODE_ALL |
FaceDetector.Builder.setLandmarkType(int landmarkType) | FaceDetectorOptions.Builder. setLandmarkMode(int landmarkMode) |
NO_LANDMARKS, ALL_LANDMARKS, CONTOUR_LANDMARKS | LANDMARK_MODE_NONE , LANDMARK_MODE_ALL GMV CONTOUR_LANDMARKS প্রতিস্থাপন করতে |
FaceDetector.Builder.setTrackingEnabled(boolean trackingEnabled) | FaceDetectorOptions.Builder. enableTracking() |
FaceDetector.Builder.setMinFaceSize(float proportionalMinFaceSize) | FaceDetectorOptions.Builder. setMinFaceSize(float minFaceSize) |
FaceDetector.Builder.setMode(int mode) | FaceDetectorOptions.Builder. setPerformanceMode(int performanceMode) |
FAST_MODE, ACCURATE_MODE | PERFORMANCE_MODE_FAST , PERFORMANCE_MODE_ACCURATE |
FaceDetector.Builder.setProminentFaceOnly(boolean prominentFaceOnly) | এই বৈশিষ্ট্যটি ফেস কনট্যুর মোড দ্বারা আচ্ছাদিত। |
Face | Face |
Contour | FaceContour |
Landmark | FaceLandmark |
Face.getContours() | Face. getAllContours() |
Face.getEulerY() | Face. getHeadEulerAngleY() |
Face.getEulerZ() | Face. getHeadEulerAngleZ() |
Face.getId() | Face. getTrackingId() |
Face.getIsLeftEyeOpenProbability() | Face. getLeftEyeOpenProbability() |
Face.getIsRightEyeOpenProbability() | Face. getRightEyeOpenProbability() |
Face.getIsSmilingProbability() | Face. getSmilingProbability() |
Face.getLandmarks() | Face. getLandmark(int landmarkType) |
Face.getPosition() | Face. getBoundingBox() |
বারকোড ডিটেক্টর
এই উদাহরণে দেখানো হিসাবে ইনিশিয়ালাইজেশনটি পুনরায় কোড করুন:
জিএমভি
barcodeDetector = new BarcodeDetector.Builder(context).build());
এমএল কিট
barcodeScanner = BarcodeScanning.getClient();
নিম্নলিখিত ক্লাস এবং পদ্ধতির নাম পরিবর্তন করুন:
android.gms.vision.barcode | mlkit.vision.barcode |
|---|---|
BarcodeDetector | BarcodeScanner |
SparseArray<Barcode> detect(Frame frame) | Task<List<Barcode>> process(@NonNull InputImage image) |
Barcode | Barcode |
টেক্সট রিকগনিশন
এই উদাহরণে দেখানো হিসাবে ইনিশিয়ালাইজেশনটি পুনরায় কোড করুন:
জিএমভি
textRecognizer = new TextRecognizer.Builder(context).build();
এমএল কিট
textRecognizer = TextRecognition.getClient(TextRecognizerOptions.DEFAULT_OPTIONS);
নিম্নলিখিত ক্লাস এবং পদ্ধতির নাম পরিবর্তন করুন:
android.gms.vision.text | mlkit.vision.text |
|---|---|
TextRecognizer | TextRecognizer |
SparseArray<TextBlock> detect(Frame frame) | Task<Text> process(@NonNull InputImage image) |
SparseArray<TextBlock> | Text |
Line | Line |
TextBlock | TextBlock |
Element | Element |
getLanguage() | getRecognizedLanguage() |
getBoundingBox() | getBoundingBox() |
getCornerPoints() | getCornerPoints() |
TextBlock.getComponents() | TextBlock.getLines() |
TextBlock.getValue() | TextBlock.getText() |
Element.getValue() | Element.getText() |
ক্যামেরাসোর্স
আপনি যদি গুগল মোবাইল ভিশন দ্বারা সরবরাহিত ক্যামেরাসোর্স লাইব্রেরি ব্যবহার করেন, তাহলে আপনি সহজেই এমএল কিটের CameraXSource লাইব্রেরিতে স্থানান্তর করতে পারবেন, যদি আপনার অ্যাপটি ন্যূনতম এসডিকে সংস্করণ >= ২১ এ চলমান থাকে।
নিম্নলিখিত ক্লাস এবং পদ্ধতির নাম পরিবর্তন করুন:
android.gms.vision | mlkit.vision.camera |
|---|---|
CameraSource | CameraSourceConfig |
CameraSource.Builder | CameraSourceConfig.Builder |
CameraSource.Builder.setAutoFocusEnabled | CameraX ব্যবহার করার সময় ডিফল্টরূপে অটোফোকাস প্রদান করা হয়। |
CameraSource.Builder.setFacing | CameraSourceConfig.Builder . setCameraFacing |
CameraSource.Builder.setFocusMode | CameraX ব্যবহার করার সময় ডিফল্টরূপে অটোফোকাস প্রদান করা হয়। |
CameraSource.Builder.setRequestedFps | অবচিত। |
CameraSource.Builder.setRequestedPreviewSize | CameraSourceConfig.Builder . setRequestedPreviewSize |
CameraSource | CameraXSource |
new CameraSource.Builder(mContext, detector)....build(); | CameraXSource(CameraSourceConfig, PreviewView) |
getCameraFacing() | getCameraFacing () |
getPreviewSize() | getPreviewSize () |
release() | close () |
start(SurfaceHolder surfaceHolder) | start () // The previewview is set in the CameraSourceConfig |
start() | start () |
stop() | stop () |
Detector.Processor | DetectionTaskCallback |
receiveDetections(Detections<T> detections) | void onDetectionTaskReceived(@NonNull Task<ResultT> detectionTask); |
release() | অভ্যন্তরীণভাবে পরিচালিত |
CameraSource.PictureCallback | অবচিত |
CameraSource.ShutterCallback | অবচিত |
সাহায্য পাওয়া
যদি আপনার কোনও সমস্যা হয়, তাহলে আমাদের কমিউনিটি পৃষ্ঠাটি দেখুন যেখানে আমরা আমাদের সাথে যোগাযোগের জন্য উপলব্ধ চ্যানেলগুলির রূপরেখা দিই।
অন্য কিছু উল্লেখ না করা থাকলে, এই পৃষ্ঠার কন্টেন্ট Creative Commons Attribution 4.0 License-এর অধীনে এবং কোডের নমুনাগুলি Apache 2.0 License-এর অধীনে লাইসেন্স প্রাপ্ত। আরও জানতে, Google Developers সাইট নীতি দেখুন। Java হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-11-18 UTC-তে শেষবার আপডেট করা হয়েছে।