You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Python类型对象的参数名称?

获取OpenCV类型对象的参数名称列表

我需要一个函数或方法,能够返回类型对象的参数名称列表,示例如下:

  • 处理cv2.BFMatcher时,返回['normType', 'crossCheck']
  • 处理cv2.FlannBasedMatcher时,返回['index_params', 'search_params']

(如果可行,还希望能获取index_params和search_params这类字典参数的键,例如['algorithm', 'table_number', 'key_size', 'multi_probe_level']等)

我尝试过inspect.getfullargspec等inspect模块的方法,但这些方法对OpenCV的这类类型对象无效。

使用场景

我正在编写一个函数,根据传入的参数创建(检测器、描述符、匹配器)组合,希望调用函数时直接传入三者的参数值,打算用dict(zip(params_keys, params_values))的方式构造参数字典,核心思路代码如下:

def method(detector_name, detector_params_values, descriptor_name, descriptor_params_values, matcher_name, matcher_params_values):
    # ...
    MATCHERS = {"BF": cv2.BFMatcher, "FLANN": cv2.FlannBasedMatcher}
    matcher_params_keys = func(matcher_name)  # 这正是我需要的函数
    matcher = MATCHERS[matcher_name](**dict(zip(matcher_params_keys, matcher_params_values)))
    
    # 检测器和描述符的处理逻辑类似

备注:我可能使用了错误的术语,因为不是Python专家,但希望问题表述清晰。


内容的提问来源于stack exchange,提问作者Zikromanti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 15:45:41