通用文字识别 216201错误,图片格式错误
a496307783 发布于2017-08 浏览:46756 回复:28
2
收藏

在使用文字识别的api时,我上次了图片,并转为base64格式,在在线base64转图片的工具中是可以转换为原图片的,但是调用百度就返回 216201错误,说是图片格式不对,请问怎么修改。

收藏
点赞
2
个赞
共28条回复 最后由回复于2023-05
#41回复于2023-05

需要经过URL转码

0
#28云指商城回复于2020-05

不能直接传送图片的BASE64字节流,需要经过URL转码才可以

0
#27horizonle回复于2019-11

求帮忙看一下

2019-11-29 15:54:39.434007+0800 语音图像[2600:879131] {

    "error_code" = 216201;

    "error_msg" = "image format error";

    "log_id" = 9064900028040021949;

}

0
#26骸秤粟yw癌厍回复于2019-08

Golang里面urlecode不要使用base64自带的base64.URLEncoding.EncodeToString函数,需要url.escape函数,且不需要加 image:base64/jpeg 等头部

0
#25骸秤粟yw癌厍回复于2019-08

Golang里面urlecode不要使用base64自带的base64.URLEncoding.EncodeToString函数,需要url.escape函数,且不需要加 data:image/png;base64, 等头部

1
#24邻村扛把子回复于2019-07
#20 开水泡饭闯天涯回复
我开始也出现了你们所说的问题,仔细看了下文档,在将图片转为base64之前得先将文件转为流, $img = file_get_contents('##本地文件路径##'); $img = base64_encode($img); $bodys = array( "image" => $img ); 然后传入,问题解决!
展开

谢谢看到你的已经解决了

 

include('./baidu/AipImageClassify.php');

$a = new AipImageClassify('xxxxx','xxxxxxx','xxxxxxxx');

$img = file_get_contents('index.jpg');
$result = $a->advancedGeneral($img);
print_r($result);exit;

Array
(
[log_id] => 8.682434735505E+17
[result_num] => 5
[result] => Array
(
[0] => Array
(
[score] => 0.856428
[root] => 商品-容器
[keyword] => 杯子
)

[1] => Array
(
[score] => 0.680532
[root] => 商品-容器
[keyword] => 纸杯
)

[2] => Array
(
[score] => 0.437052
[root] => 商品-日用品
[keyword] => 杯具
)

[3] => Array
(
[score] => 0.248417
[root] => 商品-日用品
[keyword] => 一次性纸杯
)

[4] => Array
(
[score] => 0.058057
[root] => 商品-容器
[keyword] => 废纸篓
)

)

)

0
#23du...g@timio.cn回复于2019-05

"log_id": 7919109998610513980, "error_code": 216201, "error_msg": "image format error"

0
#22du...g@timio.cn回复于2019-05

"log_id": 6472079510798327452

0
#21visystem123回复于2019-01
#19 675994209A回复
不行啊,无论是直接base64编码放进去,还是base64之后urlencode放进去,一样都不行。格式png,jpg,bmp都不行。 都是显示格式错误。   下面是部分结果的输出 第一段是base64编码后 第二段是urlencode后 [图片]
展开

0
#20开水泡饭闯天涯回复于2019-01

我开始也出现了你们所说的问题,仔细看了下文档,在将图片转为base64之前得先将文件转为流,

$img = file_get_contents('##本地文件路径##');
$img = base64_encode($img);
$bodys = array(
"image" => $img
);

然后传入,问题解决!

1
#19675994209A回复于2019-01
#2 飞天小颖猪回复
可以看一下base64字符串中是否有换行符?接口所接受的base64不能带换行符,如果是,可直接将换行符去掉。 如果还没有解决您的问题,请提供返回错误的logid,方便排查。谢谢
展开

不行啊,无论是直接base64编码放进去,还是base64之后urlencode放进去,一样都不行。格式png,jpg,bmp都不行。

都是显示格式错误。

 

下面是部分结果的输出

第一段是base64编码后

第二段是urlencode后

0
#18675994209A回复于2019-01
#2 飞天小颖猪回复
可以看一下base64字符串中是否有换行符?接口所接受的base64不能带换行符,如果是,可直接将换行符去掉。 如果还没有解决您的问题,请提供返回错误的logid,方便排查。谢谢
展开

不行啊,无论是直接base64编码放进去,还是base64之后urlencode放进去,一样都不行。格式png,jpg,bmp都不行。

都是显示格式错误。

 

0
#17勤奋的閑雲野鶴回复于2018-12

图片64编码后 直接传进去 不需要

urlencode这一步 

4
#16天鬼year回复于2018-09

png格式的就能识别,jpg格式的就不行为啥啊

 

0
#15剑走偏锋wp回复于2018-09

我的也是,有的图片就可以,有的就不行,png就挂,jpg就可以,。。。

0
#14建装本部回复于2018-08
#13 net无敌回复
结果{"log_id":7593923108540150000,"error_code":216201,"error_msg":"image format error"}
展开

你的这个问题解决了吗

 

0
#13net无敌回复于2018-08

结果{"log_id":7593923108540150000,"error_code":216201,"error_msg":"image format error"}

0
#12phileining回复于2018-08

我也遇到这个问题,BASE64在线转码时去掉了data:image/png;base64,BASE64转码也成功,但返回也是错误,请问如何处理的??

{
  "log_id": 5264080958738565774,
  "error_code": 216201,
  "error_msg": "image format error"
}

0
#11格古乐2009回复于2018-08

 也出现216201的错误。检查了没有换行符和没有data:image/png;base64。 

{"log_id": 5077449057334353533, "error_code": 216201, "error_msg": "image format error"}
result -> {"log_id": 5077449057334353533, "error_code": 216201, "error_msg": "image format error"}

麻烦检查下。

0
#10阿奴波仔回复于2018-03
#7 _oO小蝌蚪Oo_回复
我的{"error_code":216201,"error_msg":"image format error","log_id":2512013976},没有data:image/png;base64,能帮忙查一下为啥出错吗
展开

参数有正确urlencode吗

0
TOP
切换版块