美文网首页
SH-Alg 功能添加流程

SH-Alg 功能添加流程

作者: SnorlaxSE | 来源:发表于2019-10-18 15:28 被阅读0次

新建分支

Step1: 无特殊情况,从dev/master添加新分支dev/username/ToolID
Step2: git pull

代码

Alg/submodule/NewTool
  • _NewToolFunc.py
# 提供_NewTool.py需要的功能函数
  • _NewTool.py
from MeDas.Alg.common import *
from ._NewToolFunc import *


if os.environ.get('__NewTool_BACKEND__', '') == 'herculer':
    pass


class NewTool(ToolObject):
    """
    @brief  新工具功能简介
    """

    @staticmethod
    def version():
        return (0, 1, 0, 0, 'develop')

    @property
    def inputs(self) -> [ParamPlug]:
        return [
            ImagePlug('parameter1'),  # ImagePlug() 支持nii | dcm | numpy,不支持PNG路径
            FrontEndPlugM('parameter2', typ=float, default=0)
            FrontEndPlugM('parameter3', typ=str, default='replace')
        ]

    @property
    def output_constructor(self):
        return ImageCons()  # VariableCons

    def kernel(self, parameter1, parameter2, parameter3):

        ToolLogger.info('Enter')
        # 功能实现
        # ...
        ToolLogger.info('Exit')

        return Image_cons  # Variable_cons
  • __init__.py
from ._NewTool import NewTool
UnitTest
  • test_VisualFeature.py
from MeDas.Alg.common.test import *
from MeDas.Alg.submodule.NewTool._NewTool import NewTool

class NewToolTest(MeDasTestCase):

    def succ(self, out):
        print("NewTool_Test OUT", out)

    def fail(self, error):
        self.fail('catch error %s' % error)

    def test_NewTool_result(self):
        data = np.asarray([[[8, 4, 10], [7, 4, 3], [4, 0, 3]],
                           [[4, 2, 4], [5, 1, 3], [8, 7, 5]]])
        
        result = VisualFeatureTest().set_params(img_tensor=data, submodule=pretrained_module,
                                                target_layer=extract_layer, savedir=savedir).run()\
            .get_result().with_succ(self.succ).with_fail(self.fail)

        print(result)

ERROR

  • Error Expected object of scalar type Long but got scalar type Float for argument #2 'weight' catched
    解决方案: 输入的img_arr = img_arr.astype(np.float32)

相关文章

  • SH-Alg 功能添加流程

    新建分支 Step1: 无特殊情况,从dev/master添加新分支dev/username/ToolIDStep...

  • django项目--新闻详情页

    一、功能需求分析 1.功能 新闻详情 加载评论功能 添加评论功能 二、新闻详情页 1.业务流程分析 业务流程: 判...

  • Jmeter实战-接口性能测试流程(HTTP计划)

    本文实现功能:测试订单退款接口,200个线程,并发时间1s,总测试时间1个小时 总体配置流程:添加测试计划->添加...

  • 60. 2018-10-18

    A:对需求平台进行优化分析。 M:秉承着流程优化、功能点添加的思路进行分析,尽量简化流程,去除不必要的参与者,提供...

  • ALV结合Smartforms打印报表

    首先确保ALV报表正常输出,输出ALV完整流程,再在状态栏添加一个按钮,实现跳转至打印的功能。 按钮的实现添加一个...

  • 万象圈子如何开通商品橱窗功能?

    大家都在用的万象圈子,如何开通商品橱窗功能,这个流程主要是介绍圈主如何为自己的圈子添加商品橱窗功能。 首先我们需要...

  • 2018-08-27 jmeter接口测试

    1.功能测试2.流程测试3.添加用户定义的变量 jmeter按层级关系写测试点:1.先添加http请求默认值2.添...

  • 2018-09-19

    产投集团APP-智慧党建系统新增审核流程模块1、流程审核分页查询功能2、流程审核操作功能3、查看流程审核功能

  • 【农场】如何设置农场资料

    一、功能路径 好农场管理后台-农场-农场资料 二、操作流程 设置农场基本资料 添加农场详细介绍 上传农场相册 三、...

  • Markdown基础语法

    Markdown的语法非常简单,但有些编辑器添加了表格、流程图、To-do列表等花哨的功能,大大降低了Markdo...

网友评论

      本文标题:SH-Alg 功能添加流程

      本文链接:https://www.haomeiwen.com/subject/bmrimctx.html