FirebaseVisionBarcodeDetector
Stay organized with collections
Save and categorize content based on your preferences.
This class is deprecated.
The standalone ML Kit SDK replaces this API. For more information, refer to the migration guide.
Recognizes barcodes (in a variety of 1D and 2D formats) in a supplied FirebaseVisionImage
.
A barcode detector is created via
getVisionBarcodeDetector(FirebaseVisionBarcodeDetectorOptions)
or
getVisionBarcodeDetector()
. The default option is not recommended because it tries
to detect all barcode formats, which is slow. For example, the code below creates a barcode
detector for
FORMAT_PDF417
.
FirebaseVisionBarcodeDetector barcodeDetector =
FirebaseVision.getInstance().getVisionBarcodeDetector(
new FirebaseVisionBarcodeDetectorOptions.Builder()
.setBarcodeFormats(FirebaseVisionBarcode.FORMAT_PDF417)
.build());
To perform barcode detection in an image, you first need to create an instance of
FirebaseVisionImage
from a
Bitmap
,
ByteBuffer
, etc. See
FirebaseVisionImage
documentation for more details. For example, the code below creates a
FirebaseVisionImage
from a
Image
.
FirebaseVisionImage image =
FirebaseVisionImage.fromMediaImage(mediaImage, ImageFormat.YUV_420_888);
Then the code below can detect barcodes in the supplied
FirebaseVisionImage
.
Task
<List<FirebaseVisionBarcode>> task = barcodeDetector.detectInImage(image);
task.addOnSuccessListener(...).addOnFailureListener(...);
Inherited Method Summary
From class java.lang.Object
Object
|
clone()
|
boolean |
|
void |
finalize()
|
final Class<?>
|
getClass()
|
int |
hashCode()
|
final void |
notify()
|
final void |
notifyAll()
|
String
|
toString()
|
final void |
wait(long arg0, int arg1)
|
final void |
wait(long arg0)
|
final void |
wait()
|
From interface java.io.Closeable
From interface java.lang.AutoCloseable
Public Methods
Detects barcodes from the supplied image.
For best efficiency, create a
FirebaseVisionImage
object using one of the following ways:
All other
FirebaseVisionImage
factory methods will work as well, but possibly slightly
slower.
To get the best detection result, we recommend the following:
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2020-08-14 UTC.
[null,null,["Last updated 2020-08-14 UTC."],[],[],null,["public class **FirebaseVisionBarcodeDetector** extends [Object](//developer.android.com/reference/java/lang/Object.html) \nimplements [Closeable](//developer.android.com/reference/java/io/Closeable.html) [Closeable](//developer.android.com/reference/java/io/Closeable.html) \n**This class is deprecated.** \n\nThe standalone ML Kit SDK replaces this API. For more information, refer to the [migration guide](//developers.google.com/ml-kit/migration).\n\nRecognizes barcodes (in a variety of 1D and 2D formats) in a supplied [FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage).\n\nA barcode detector is created via [getVisionBarcodeDetector(FirebaseVisionBarcodeDetectorOptions)](/docs/reference/android/com/google/firebase/ml/vision/FirebaseVision#getVisionBarcodeDetector(com.google.firebase.ml.vision.barcode.FirebaseVisionBarcodeDetectorOptions)) or [getVisionBarcodeDetector()](/docs/reference/android/com/google/firebase/ml/vision/FirebaseVision#getVisionBarcodeDetector()). The default option is not recommended because it tries\nto detect all barcode formats, which is slow. For example, the code below creates a barcode\ndetector for [FORMAT_PDF417](/docs/reference/android/com/google/firebase/ml/vision/barcode/FirebaseVisionBarcode#FORMAT_PDF417). \n\n \n FirebaseVisionBarcodeDetector barcodeDetector =\n FirebaseVision.getInstance().getVisionBarcodeDetector(\n new FirebaseVisionBarcodeDetectorOptions.Builder()\n .setBarcodeFormats(FirebaseVisionBarcode.FORMAT_PDF417)\n .build());\n \n\n \nTo perform barcode detection in an image, you first need to create an instance of `\n`[FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage) from a [Bitmap](//developer.android.com/reference/android/graphics/Bitmap.html), [ByteBuffer](//developer.android.com/reference/java/nio/ByteBuffer.html), etc. See [FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage) documentation for more details. For example, the code below creates a [FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage) from a [Image](//developer.android.com/reference/android/media/Image.html). \n\n FirebaseVisionImage image =\n FirebaseVisionImage.fromMediaImage(mediaImage, ImageFormat.YUV_420_888);\n \nThen the code below can detect barcodes in the supplied [FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage). \n\n\n Task\u003cList\u003cFirebaseVisionBarcode\u003e\u003e task = barcodeDetector.detectInImage(image);\n task.addOnSuccessListener(...).addOnFailureListener(...);\n \nPublic Method Summary\n\nInherited Method Summary \nFrom class java.lang.Object \n\nFrom interface java.io.Closeable \n\nFrom interface java.lang.AutoCloseable \n\nPublic Methods \n\npublic void **close** () \nCloses this [FirebaseVisionBarcodeDetector](/docs/reference/android/com/google/firebase/ml/vision/barcode/FirebaseVisionBarcodeDetector) and releases its model. \n\nThrows\n\npublic [Task](//developers.google.com/android/reference/com/google/android/gms/tasks/Task.html)\\\u003c[List](//developer.android.com/reference/java/util/List.html)\\\u003c[FirebaseVisionBarcode](/docs/reference/android/com/google/firebase/ml/vision/barcode/FirebaseVisionBarcode)\\\u003e\\\u003e\n**detectInImage** ([FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage) image) \nDetects barcodes from the supplied image.\n\nFor best efficiency, create a [FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage) object using one of the following ways:\n\n- [fromMediaImage(Image, int)](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage#fromMediaImage(android.media.Image, int)) with a [YUV_420_888](//developer.android.com/reference/android/graphics/ImageFormat.html#YUV_420_888) formatted image from [android.hardware.camera2](/docs/reference/android/reference/android/hardware/camera2/package-summary).\n- [fromByteArray(byte[], FirebaseVisionImageMetadata)](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage#fromByteArray(byte[], com.google.firebase.ml.vision.common.FirebaseVisionImageMetadata)) with a [NV21](//developer.android.com/reference/android/graphics/ImageFormat.html#NV21) formatted image from [Camera](//developer.android.com/reference/android/hardware/Camera.html) (deprecated).\n- [fromByteBuffer(java.nio.ByteBuffer, FirebaseVisionImageMetadata)](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage#fromByteBuffer(java.nio.ByteBuffer, com.google.firebase.ml.vision.common.FirebaseVisionImageMetadata)) if you need to pre-process the image. E.g. allocate a direct [ByteBuffer](//developer.android.com/reference/java/nio/ByteBuffer.html) and write processed pixels into the [ByteBuffer](//developer.android.com/reference/java/nio/ByteBuffer.html).\n\nAll other [FirebaseVisionImage](/docs/reference/android/com/google/firebase/ml/vision/common/FirebaseVisionImage) factory methods will work as well, but possibly slightly slower.\n\nTo get the best detection result, we recommend the following:\n\n- The image size is at least 1280 x 960.\n- The barcode covers most of the image.\n- Narrow down the barcode formats in [FirebaseVisionBarcodeDetectorOptions](/docs/reference/android/com/google/firebase/ml/vision/barcode/FirebaseVisionBarcodeDetectorOptions). \n\nReturns\n\n- A [Task](//developers.google.com/android/reference/com/google/android/gms/tasks/Task.html) that asynchronously returns a [List](//developer.android.com/reference/java/util/List.html) of detected [FirebaseVisionBarcode](/docs/reference/android/com/google/firebase/ml/vision/barcode/FirebaseVisionBarcode)s. An empty list is returned by the [Task](//developers.google.com/android/reference/com/google/android/gms/tasks/Task.html) if nothing is found."]]