#include <opencv2/objdetect/barcode.hpp>
|
| BarcodeDetector () |
| 初始化 BarcodeDetector。
|
|
| BarcodeDetector (CV_WRAP_FILE_PATH const std::string &prototxt_path, CV_WRAP_FILE_PATH const std::string &model_path) |
| 初始化 BarcodeDetector。
|
|
| ~BarcodeDetector () |
|
bool | decodeWithType (InputArray img, InputArray points, std::vector< std::string > &decoded_info, std::vector< std::string > &decoded_type) const |
| 在通过 detect() 方法找到条形码后对其进行解码。
|
|
bool | detectAndDecodeWithType (InputArray img, std::vector< std::string > &decoded_info, std::vector< std::string > &decoded_type, OutputArray points=noArray()) const |
| 同时检测和解码条形码。
|
|
void | getDetectorScales (std::vector< float > &sizes) const |
| 返回检测器框滤波器大小。
|
|
double | getDownsamplingThreshold () const |
| 获取检测器下采样阈值。
|
|
double | getGradientThreshold () const |
| 获取检测器梯度幅度阈值。
|
|
BarcodeDetector & | setDetectorScales (const std::vector< float > &sizes) |
| 设置检测器框滤波器大小。
|
|
BarcodeDetector & | setDownsamplingThreshold (double thresh) |
| 设置检测器下采样阈值。
|
|
BarcodeDetector & | setGradientThreshold (double thresh) |
| 设置检测器梯度幅度阈值。
|
|
| GraphicalCodeDetector () |
|
| GraphicalCodeDetector (const GraphicalCodeDetector &)=default |
|
| GraphicalCodeDetector (GraphicalCodeDetector &&)=default |
|
std::string | decode (InputArray img, InputArray points, OutputArray straight_code=noArray()) const |
| 在通过 detect() 方法找到图形码后对其进行解码。
|
|
bool | decodeMulti (InputArray img, InputArray points, std::vector< std::string > &decoded_info, OutputArrayOfArrays straight_code=noArray()) const |
| 在通过 detect() 方法找到图形码后对其进行解码。
|
|
bool | detect (InputArray img, OutputArray points) const |
| 检测图像中的图形码,并返回包含该码的四边形。
|
|
std::string | detectAndDecode (InputArray img, OutputArray points=noArray(), OutputArray straight_code=noArray()) const |
| 同时检测和解码图形码。
|
|
bool | detectAndDecodeMulti (InputArray img, std::vector< std::string > &decoded_info, OutputArray points=noArray(), OutputArrayOfArrays straight_code=noArray()) const |
| 同时检测和解码图形码。
|
|
bool | detectMulti (InputArray img, OutputArray points) const |
| 检测图像中的图形码,并返回包含这些码的四边形向量。
|
|
GraphicalCodeDetector & | operator= (const GraphicalCodeDetector &)=default |
|
GraphicalCodeDetector & | operator= (GraphicalCodeDetector &&)=default |
|
◆ BarcodeDetector() [1/2]
cv::barcode::BarcodeDetector::BarcodeDetector |
( |
| ) |
|
Python |
---|
| cv.barcode.BarcodeDetector( | | ) -> | <barcode_BarcodeDetector object> |
| cv.barcode.BarcodeDetector( | prototxt_path, model_path | ) -> | <barcode_BarcodeDetector object> |
◆ BarcodeDetector() [2/2]
Python |
---|
| cv.barcode.BarcodeDetector( | | ) -> | <barcode_BarcodeDetector object> |
| cv.barcode.BarcodeDetector( | prototxt_path, model_path | ) -> | <barcode_BarcodeDetector object> |
初始化 BarcodeDetector。
参数允许加载可选的超分辨率 DNN 模型以获得更好的质量。
- 参数
-
prototxt_path | 超分辨率模型的 prototxt 文件路径 |
model_path | 超分辨率模型的模型文件路径 |
◆ ~BarcodeDetector()
cv::barcode::BarcodeDetector::~BarcodeDetector |
( |
| ) |
|
◆ decodeWithType()
bool cv::barcode::BarcodeDetector::decodeWithType |
( |
InputArray |
img, |
|
|
InputArray |
points, |
|
|
std::vector< std::string > & |
decoded_info, |
|
|
std::vector< std::string > & |
decoded_type |
|
) |
| const |
Python |
---|
| cv.barcode.BarcodeDetector.decodeWithType( | img, points | ) -> | retval, decoded_info, decoded_type |
在通过 detect() 方法找到条形码后对其进行解码。
- 参数
-
img | 包含条形码的灰度或彩色(BGR)图像。 |
points | 由 detect() 方法(或其他算法)找到的旋转矩形顶点的向量。对于 N 个检测到的条形码,此数组的维度应为 [N][4]。vector<Point2f> 中四个点的顺序为左下角、左上角、右上角、右下角。 |
decoded_info | UTF8 编码的字符串输出向量,如果代码无法解码,则为空字符串向量。 |
decoded_type | 字符串向量,指定这些条形码的类型 |
- 返回值
- 如果找到至少一个有效的条形码,则返回 true
◆ detectAndDecodeWithType()
bool cv::barcode::BarcodeDetector::detectAndDecodeWithType |
( |
InputArray |
img, |
|
|
std::vector< std::string > & |
decoded_info, |
|
|
std::vector< std::string > & |
decoded_type, |
|
|
OutputArray |
points = noArray() |
|
) |
| const |
Python |
---|
| cv.barcode.BarcodeDetector.detectAndDecodeWithType( | img[, points] | ) -> | retval, decoded_info, decoded_type, points |
同时检测和解码条形码。
- 参数
-
img | 包含条形码的灰度或彩色(BGR)图像。 |
decoded_info | UTF8 编码的字符串输出向量,如果代码无法解码,则为空字符串向量。 |
decoded_type | 字符串向量,指定这些条形码的类型 |
points | 找到的条形码矩形的顶点可选输出向量。如果未找到,则为空。 |
- 返回值
- 如果找到至少一个有效的条形码,则返回 true
◆ getDetectorScales()
void cv::barcode::BarcodeDetector::getDetectorScales |
( |
std::vector< float > & |
sizes | ) |
const |
Python |
---|
| cv.barcode.BarcodeDetector.getDetectorScales( | | ) -> | sizes |
◆ getDownsamplingThreshold()
double cv::barcode::BarcodeDetector::getDownsamplingThreshold |
( |
| ) |
const |
Python |
---|
| cv.barcode.BarcodeDetector.getDownsamplingThreshold( | | ) -> | retval |
◆ getGradientThreshold()
double cv::barcode::BarcodeDetector::getGradientThreshold |
( |
| ) |
const |
Python |
---|
| cv.barcode.BarcodeDetector.getGradientThreshold( | | ) -> | retval |
获取检测器梯度幅度阈值。
- 返回值
- 检测器梯度幅度阈值。
◆ setDetectorScales()
BarcodeDetector & cv::barcode::BarcodeDetector::setDetectorScales |
( |
const std::vector< float > & |
sizes | ) |
|
Python |
---|
| cv.barcode.BarcodeDetector.setDetectorScales( | sizes | ) -> | retval |
设置检测器框滤波器大小。
调整检测步骤中使用的框滤波器的大小和数量。滤波器大小直接与条形码的预期线宽相关。对应于预期的条形码距离。如果下采样限制增加,则滤波器大小需要以反比的方式调整。
- 参数
-
sizes | 框滤波器大小,相对于图像的最小尺寸(默认 [0.01, 0.03, 0.06, 0.08]) |
◆ setDownsamplingThreshold()
BarcodeDetector & cv::barcode::BarcodeDetector::setDownsamplingThreshold |
( |
double |
thresh | ) |
|
Python |
---|
| cv.barcode.BarcodeDetector.setDownsamplingThreshold( | thresh | ) -> | retval |
设置检测器下采样阈值。
默认情况下,如果最小图像尺寸大于阈值,则 detect 方法会将输入图像的大小调整到此限制。增加此值可以提高检测精度和结果数量,但会影响性能。与检测器缩放相关。将其设置为较大的值将禁用下采样。
- 参数
-
- 另请参阅
- setDetectorScales
◆ setGradientThreshold()
BarcodeDetector & cv::barcode::BarcodeDetector::setGradientThreshold |
( |
double |
thresh | ) |
|
Python |
---|
| cv.barcode.BarcodeDetector.setGradientThreshold( | thresh | ) -> | retval |
设置检测器梯度幅度阈值。
设置检测到的边界框的连贯性阈值。增加此值将生成更贴合的边界框宽度,并可以减少误报。通常情况下,16 到 1024 之间的值有效,而过高的值将删除有效的检测结果。
- 参数
-
此类的文档从以下文件生成