多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# Blob 类 – 色块对象 色块对象是由 `image.find_blobs`返回的。 * [ ] **构造函数** ``` class image.blob ``` 请调用`image.find_blobs()`函数来创建此对象。 * [ ] **方法** ``` blob.rect() ``` > 矩形元组 *参数:* * 无 *返回:* * 返回一个矩形元组(x, y, w, h) ,用于如色块边界框的 `image.draw_rectangle`等 其他的`image`方法。 ``` blob.x() ``` *参数:* * 无 > 色块的边界框的x坐标 *返回:* * 返回色块的边界框的x坐标(int)。 您也可以通过索引`[0]`取得这个值。 ``` blob.y() ``` > 色块的边界框的y坐标 *参数:* * 无 *返回:* * 返回色块的边界框的y坐标(int)。 您也可以通过索引`[1]`取得这个值。 ``` blob.w() ``` *参数:* * 无 > 色块的边界框的w坐标 *返回:* * 返回色块的边界框的w坐标(int)。 您也可以通过索引`[2]`取得这个值。 ``` blob.h() ``` > 返回色块的边界框的h坐标 *参数:* * 无 *返回:* * 返回色块的边界框的h坐标(int)。 您也可以通过索引`[3]`取得这个值。 ``` blob.pixels() ``` > 色块的像素数量 *参数:* * 无 *返回:* * 返回从属于色块(int)一部分的像素数量。 您也可以通过索引`[4]`取得这个值。 ``` blob.cx() ``` > 色块中心x位置 *参数:* * 无 *返回:* * 返回色块(int)的中心x位置。 您也可以通过索引`[5]`取得这个值。 ``` blob.cy() ``` *参数:* * 无 *返回:* * 返回色块(int)的中心y位置。 您也可以通过索引`[6]`取得这个值。 ``` blob.rotation() ``` > 色块的旋转 *参数:* * 无 *返回:* * 返回色块的旋转(单位:弧度)。如果色块类似铅笔或钢笔,那么这个值就是介于0-180之间的唯一值。 如果这个色块圆的,那么这个值就没有效用。如果这个色块完全不具有对称性,您只能由此得到0-360度的旋转。 您也可以通过索引`[7]`取得这个值。 ``` blob.code() ``` *参数:* * 无 *返回:* * 返回一个16位的二进制数字,其中为每个颜色阈值设置一个位,这是色块的一部分。 例如,如果您通过`image.find_blobs`来寻找三个颜色阈值,这个色块可以设置为0/1/2位。 注意:除非以`merge=True`调用`image.find_blobs`,否则每个色块只能设置一位。 那么颜色阈值不同的多个色块就可以合并在一起了。 您也可以用这个方法以及多个阈值来实现颜色代码跟踪。 您也可以通过索引`[8]`取得这个值。 ``` blob.count() ``` > 合并为这一色块的多个色块的数量 *参数:* * 无 *返回:* * 返回合并为这一色块的多个色块的数量。只有您以`merge=True`调用`image.find_blobs`时,这个数字才不是1。 您也可以通过索引`[9]`取得这个值。 ``` blob.area() ``` > 色块周围的边框面积 *参数:* * 无 *返回:* * 返回色块周围的边框面积(w \* h) ``` blob.density() ``` > 色块的密度比 *参数:* * 无 *返回:* * 返回这个色块的密度比。这是在色块边界框区域内的像素点的数量。 总的来说,较低的密度比意味着这个对象的锁定得不是很好。