-
Notifications
You must be signed in to change notification settings - Fork 251
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
使用客户端调用时的疑问:预处理后处理 #833
Comments
|
client 配置client = Client() 前后处理,前处理交给预测前的参数拼装,后处理是预测结果到用户结果的转换,都要根据入参来具体编写。preprocess = Sequential( #简单图像变换 postprocess = SegPostprocess(19) #使用已有Seg后处理 filename = sys.argv[1] 请求服务端预测,预测结果转换fetch_map = client.predict(feed={"image": im}, fetch=["arg_max_0.tmp_0"]) |
inference_model_to_serving函数做模型转换,转为Paddle Serving的可用的模型文件,生成serving_client_conf.prototxt, serving_server_conf.prototxt。这里包括了feed和fetch的参数格式,需要按此格式拼装feed和fetch结构 参考 文档: https://github.com/PaddlePaddle/Serving/blob/develop/doc/SAVE_CN.md |
@TeslaZhao 谢谢,因为模型是使用 Seg套件得到的,Serving是不是覆盖到了Seg呢?覆盖到的话,预处理是不是我只需要调用 |
|
使用文本打开即可 |
resize是preprocess的操作。 想问下是什么样的模型,预期的输入和输出的shape具体的值应该都是多少 |
@TeslaZhao
这与 serving_client_conf.prototxt 要fetch_var 的 shape不一致啊,是什么原因呢? |
我还是不太理解SegPostprocess 中reshape(512,512,1)的操作,我得到的mask为(1,2,1024,1024)在经过这一步时会出错,我应该改为什么呢? |
@TeslaZhao 我的模型是使用 inference_model_to_serving,将推理模型转化为serving模型的,我发现使用这个函数后,serving_client_conf.prototxt中fetch的name总是固定为:"save_infer_model/scale_0";是不是这里有点问题呢? |
@TeslaZhao 经我验证,应该是官方代码的BUG,模型catch到的是未经过argmax的变量,但在SegPostprocess中却没有argmax操作;
应该改为:
|
谢谢你的建议,@iceriver97 |
我想确认两个事情:
下面的客户端代码是通用的吗?如果不是我需要修改什么地方?
The text was updated successfully, but these errors were encountered: