216202图片尺寸报错,这个尺寸为啥不合格?
longkey_zsb 发布于2021-02 浏览:8605 回复:25
1
收藏

是高度受限?图片不大,327K的jpg编码超出4M?

收藏
点赞
1
个赞
共25条回复 最后由用户已被禁言回复于2021-05
#8longkey_zsb回复于2021-02

我是今早看见百度接口文档就写的。只有短短几行代码,我参考的接口例子在https://ai.baidu.com/ai-doc/BODY/Mk3cpys3f

下面是C#全部实现代码

 

 

1
#35用户已被禁言回复于2021-05

https://xasgkfp.diytrade.com/
http://xasgkfp.diytrade.com/
http://xakfp.simplesite.com/
http://cdfapiao.simplesite.com/

0
#31用户已被禁言回复于2021-05

https://xasgkfp.diytrade.com

http://xasgkfp.diytrade.com

0
#24用户已被禁言回复于2021-02
#23 longkey_zsb回复
似乎,百度对BMP不够友好嘛。 下图我写的BitmapToBytes函数改用 Bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg),问题解决。 提交相同的一张图片(bmp或Jpeg),采用BMP格式常报尺寸错误,用Jpeg就正常。[图片]    
展开

能解决也行。建议提交工单反馈一下。让百度RD看能不能完美解决一下

0
#23longkey_zsb回复于2021-02

似乎,百度对BMP不够友好嘛。

下图我写的BitmapToBytes函数改用 Bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg),问题解决。

提交相同的一张图片(bmp或Jpeg),采用BMP格式常报尺寸错误,用Jpeg就正常。

 

 

1
#22用户已被禁言回复于2021-02
#21 longkey_zsb回复
正确时百度会传回result结果, 出错时我看不到Base64编码的,之前我表达错了。 C#只用设置图像的byte[]数组和options参数,至于你们说的Base64编码,是服务器传回来的,出错时我也看不到。 var result = client.BodySeg(BitmapToBytes(bitmapOp), options);
展开

那就没问题。那就得找C#的同事或者朋友帮你测试一下。看看是不是都有这个问题

1
#21longkey_zsb回复于2021-02

正确时百度会传回result结果, 出错时我看不到Base64编码的,之前我表达错了。

C#只用设置图像的byte[]数组和options参数,至于你们说的Base64编码,是服务器传回来的,出错时我也看不到。
var result = client.BodySeg(BitmapToBytes(bitmapOp), options);

0
#20用户已被禁言回复于2021-02
#19 longkey_zsb回复
C#是要求传递BASE64,下图是554*1109宽度的图片,返回的错误码JSON如下。 [图片]
展开

这样吧。还是用你发的那个图片。你转成BASE64和我的对比一下。

就知道是不是BASE64的问题了。

链接: https://pan.baidu.com/s/1w67jPVZ17JeJKuOeGwBycw 提取码: p9uy 复制这段内容后打开百度网盘手机App,操作更方便哦
--来自百度网盘超级会员v3的分享

0
#19longkey_zsb回复于2021-02

C#是要求传递BASE64,下图是554*1109宽度的图片,返回的错误码JSON如下。

1
#18用户已被禁言回复于2021-02
#16 longkey_zsb回复
同样的C#代码不做任何修改,上传小图片就正常返回结果。大点图就容易返回错误. 这个跟设置没有多少关系吧。返回错误码查了也是尺寸问题。我只是想知道为啥你java能正常抠图,我C#就不行.
展开

C#是要求传递BASE64还是byte?

 

0
#17用户已被禁言回复于2021-02
#16 longkey_zsb回复
同样的C#代码不做任何修改,上传小图片就正常返回结果。大点图就容易返回错误. 这个跟设置没有多少关系吧。返回错误码查了也是尺寸问题。我只是想知道为啥你java能正常抠图,我C#就不行.
展开

接口都是一样的。语言封装只是一个渠道而已。

你把接口返回的信息完整发出来。

百度接口我用了3-4年。基本没有宕机过。错误成功都是会返回JSON格式字符串

1
#16longkey_zsb回复于2021-02

同样的C#代码不做任何修改,上传小图片就正常返回结果。大点图就容易返回错误. 这个跟设置没有多少关系吧。返回错误码查了也是尺寸问题。我只是想知道为啥你java能正常抠图,我C#就不行.

1
#15用户已被禁言回复于2021-02

我用Java测试你的图片没有任何问题哦

你们如果走了nginx。建议排查一下nginx的包体大小设置

public class Sample {
    public static String BODY_SEG_PHOTO_URL = "https://aip.baidubce.com/rest/2.0/image-classify/v1/body_seg";

    private String log_id;
    private SegInfoBean seg_info;
    private FaceLocationBean face_location;
    private PoseInfoBean pose_info;

    public static void main(String[] args) throws Exception{
        String access_token = "";
        String filePath = "F://testimg//sizeerror.jpg";
        String param = "image="+ URLEncoder.encode(Base64Util.encode(FileUtil.readFileByBytes(filePath)), "UTF-8")+"&type=foreground";
        System.out.println("param = " + param);
        long startTime = System.currentTimeMillis();
        String post = HttpUtil.post(BODY_SEG_PHOTO_URL+"?access_token="+access_token, param);
        System.out.println(System.currentTimeMillis()-startTime);
        System.out.println(post);
    }

2
#14用户已被禁言回复于2021-02
#13 longkey_zsb回复
提取码:byte  这张错误提示是这样的 “Baidu.Aip.AipException”类型的未经处理的异常在 AipSdk.dll 中发生 其他信息: Unexpected character encountered while parsing value: <. Path '', line 0, position 0.: 413 Request Entity Too Large 413 Request Entity Too Large nginx
展开

百度成功失败都是JSON字符串。

你这个413?是你们业务系统走了nginx?可以看看你们的nginx配置的client_max_body_size    是多大。

 

1
#13longkey_zsb回复于2021-02

提取码:byte 

这张错误提示是这样的

“Baidu.Aip.AipException”类型的未经处理的异常在 AipSdk.dll 中发生

其他信息: Unexpected character encountered while parsing value: <. Path '', line 0, position 0.:

413 Request Entity Too Large

413 Request Entity Too Large

nginx

0
#12longkey_zsb回复于2021-02

刚才那个不是图片尺寸错误,是另一种错误,下面这张提示尺寸错误

链接:https://pan.baidu.com/s/1GwvYSLIG5fq-XWkKK777uw
提取码:size  

0
#11longkey_zsb回复于2021-02

照片链接:https://pan.baidu.com/s/1UyZfPVs9NuNtt_HsLmaFOQ
提取码:byte
 

0
#10用户已被禁言回复于2021-02
#8 longkey_zsb回复
我是今早看见百度接口文档就写的。只有短短几行代码,我参考的接口例子在https://ai.baidu.com/ai-doc/BODY/Mk3cpys3f 下面是C#全部实现代码[图片]    
展开

百度接口简单。只要自身语言基础不差。看一下就明白的

文档确实没有图片宽高比限制。可以把你的图片提交工单发给百度查看

如果不涉密。可以上传百度云给我个链接。我用Java试试

2
#9longkey_zsb回复于2021-02

置顶那里,就是全部代码了。接口也是比较简单的。

0
#7longkey_zsb回复于2021-02

接口是:人体分析中的人像分割 ,用的是C#编程

 

 

1
TOP
切换版块