在图像搜索服务中进行图片搜索时,您可以通过设置过滤条件,来返回符合过滤条件的图像结果。例如仅返回ownerId为1000的图像结果,或者仅返回公司名称为alibaba的图像结果。
如需了解更多产品详情和获取技术支持,请单击在线咨询或通过钉钉群(35035130)联系我们。
字段设置
新增图片时,支持设置IntAttr、IntAttr2、IntAttr3、IntAttr4、StrAttr、StrAttr2、StrAttr3、StrAttr4共8个字段,分别表示4个整型字段和4个字符串类型字段。搜索图片时您可以通过这四个字段进行过滤。图像搜索服务支持多种方式新增图片,下面为您分别展示不同方式新增图片时过滤条件的设置示例。
-
通过批量操作的方式新增图,详情请参见批量操作。
{"OperationType": "ADD","ProductId": "1000","CategoryId": 0,"IntAttr": 123,"IntAttr2": 135,"StrAttr": "value1","StrAttr2": "value2","IntAttr3": 3,"StrAttr4": "value4","CustomContent": "k1:v1,k2:v2,k3:v3","PicName": "girl_cloth1.jpg"} -
通过SDK新增图片,详情请参见Add接口。
-
通过控制台新增图片。
在控制台图片新增页面,通过设置属性参数增加IntAttr、IntAttr2、IntAttr3、IntAttr4、StrAttr、StrAttr2、StrAttr3、StrAttr4等取值。在图片新增页面,填写以下字段:商品ID(如1)、图片名称(如1.jpg)、上传图片、图片主体识别开关(开启后选择主体识别方式为系统自动识别)、图片类目、自定义内容、整数型属性(如1000)、字符串属性(如str2345)、整数型属性2(如200)、字符串属性2(如str9999)。填写完成后单击确入按钮提交,成功时返回JSON响应中
code为0、message为success、statusCode为200,并在picInfo中返回categoryId和region信息。
字段过滤
搜索时设置过滤条件来达到过滤的目的。多个条件之间用AND或OR进行连接。
-
int_attr、int_attr2、int_attr3、int_attr4支持如下操作符:
-
>
-
>=
-
<
-
<=
-
=
-
in
-
not in
-
-
str_attr、str_attr2、str_attr3、str_attr4支持如下操作符:
-
=
-
!=
-
in
-
not in
-
示例如下:
int_attr>=100
str_attr!="value1"
int_attr=1000 AND str_attr="value1"
intAttr = 1000 AND intAttr2 = 200 AND strAttr = "str2345" AND strAttr2="str9999"
-
通过API搜索,详情请参见请求参数。
将API中的filter参数的值设置为上述条件即可。
-
通过SDK搜索,详情请参见SearchImageByPic接口。
调用SearchItemRequest的setFilterClause方法来进行设置。
-
通过控制台搜索。
根据上述样例设置过滤条件。在图片搜索页签中,搜索类型选择 SearchByPic,上传待搜索图片并开启图片主体识别(主体识别方式为系统自动识别),设置返回结果数为 10、结果起始位置为 0。在过滤条件输入框中填写过滤表达式,例如
intAttr = 1000 AND intAttr2 = 200 AND strAttr = "str2345" AND strAttr2 = "str9999",单击确认。返回结果 JSON 中 docsFound 与 docsReturn 均为 1,匹配记录的字段值(intAttr:1000、intAttr2:200、strAttr:"str2345"、strAttr2:"str9999")与过滤条件一致,说明字段过滤生效。