递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 206|回复: 4
打印 上一主题 下一主题

[视窗] 求助怎么传参考接收

[复制链接]

2

主题

7

帖子

26

积分

新手上路

Rank: 1

积分
26
跳转到指定楼层
楼主
发表于 4 天前 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这样会输出无法解析的对象数据,其输出类名为: "rg_n13804::rg_n13858", 地址为: 0x13D42C0C740
回复

使用道具 举报

2

主题

7

帖子

26

积分

新手上路

Rank: 1

积分
26
沙发
 楼主| 发表于 4 天前 | 只看该作者
C:\Users\Administrator\Desktop\1.png
回复

使用道具 举报

2

主题

7

帖子

26

积分

新手上路

Rank: 1

积分
26
板凳
 楼主| 发表于 4 天前 | 只看该作者
<火山程序 类型 = "通常" 版本 = 1 />

方法 预测 <公开 类型 = 整数 注释 = "成功返回目标数" 注释 = "qsncnn_predict">
参数 图片 <类型 = 字节集类>
参数 可信度 <类型 = 单精度小数 注释 = "低于此值的将被过滤" @默认值 = 0.7>
参数 重叠度 <类型 = 单精度小数 注释 = "预测框是否是有效检测或重复框消除的标准" @默认值 = 0.65>
参数 是否显示 <类型 = 逻辑型 注释 = "预测框是否显示" @默认值 = 假>
参数 参考_boxs <类型 = 对象数组类 注释 = "QN_Box自定结构数组 参考接收">
{
    参考_boxs.删除所有成员 ()
    如果 (p < 1)
    {
        返回 (0)
    }
    变量 cys <类型 = 整数>
    变量 结果指针 <类型 = 变整数>
    变量 i <类型 = 整数>
    变量 QN_Box <类型 = QN_Box>

    结果指针 = qsncnn_predict (p, 图片.取字节集指针 (), 图片.取字节集长度 (), 可信度, 重叠度, 是否显示)
    // 调试输出 ("结果指针", 结果指针, 图片.取字节集指针 (), 图片.取字节集长度 ())
    如果 (结果指针 < 1)
    {
        返回 (0)
    }

    cys = (整数)qsncnn_boxs_size (结果指针)
    如果 (cys < 1)
    {
        返回 (0)
    }
    // 调试输出 ("数量", cys)
    循环 (0, cys, i, 1)
    {
        // 调试输出 ("循环信息", i)

        qsncnn_boxs_getbox (结果指针, i, QN_Box)
        // 调试输出 (QN_Box.x1, QN_Box.y1, QN_Box.x2, QN_Box.y2, QN_Box.score, QN_Box.label)

        参考_boxs.加入成员 (QN_Box)

    }

    qsncnn_release_boxs (结果指针)  // 释放

    返回 (cys)
}
<火山程序 类型 = "通常" 版本 = 1 />

类 QN_Box <公开 注释 = "Yolo识别结构" @视窗.结构类 = 0>
{
    变量 x1 <公开 类型 = 单精度小数>
    变量 y1 <公开 类型 = 单精度小数>
    变量 x2 <公开 类型 = 单精度小数>
    变量 y2 <公开 类型 = 单精度小数>
    变量 score <公开 类型 = 单精度小数 注释 = "得分">
    变量 label <公开 类型 = 整数 注释 = "标签id">

    #
}
我的代码<火山程序 类型 = "通常" 版本 = 1 />

变量 检测框 <类型 = 对象数组类 "">


如果真 (来源对象 == 启动按钮)
{
    全局变量类.yolo.预测 (读入文件 ("C:/Users/Administrator/Desktop/33.png"), 0.5, 0.5, 真, 检测框)
    调试输出 (对象数组类.取成员 (检测框, 1))

}

回复

使用道具 举报

29

主题

2426

帖子

8654

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8654
地板
发表于 4 天前 | 只看该作者
1、答标题,火山的类是默认参考返回的,整数等基本数值类型默认不参考返回,需要用整数类之类的。
2、顶楼报的信息,是因为你的类没有调试输出信息(自定义类需要自己重写“取展示内容”,才能用调试输出)

<火山程序 类型 = "通常" 版本 = 1 />

变量 检测框 <类型 = 对象数组类 "">
如果真 (来源对象 == 启动按钮)
{
    全局变量类.yolo.预测 (读入文件 ("C:/Users/Administrator/Desktop/33.png"), 0.5, 0.5, 真, 检测框)

    变量 box <类型 = QN_Box>
    box = 检测框.取指定类型成员 (QN_Box, 0)
    调试输出 (box.x1, box.y1, box.x2, box.y2, box.x1, box.score, box.label)
}
回复

使用道具 举报

2

主题

7

帖子

26

积分

新手上路

Rank: 1

积分
26
5#
 楼主| 发表于 昨天 10:17 | 只看该作者
Xelloss0618 发表于 2025-8-15 19:38
1、答标题,火山的类是默认参考返回的,整数等基本数值类型默认不参考返回,需要用整数类之类的。
2、顶楼 ...

谢谢!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2025-8-19 02:52 , Processed in 0.085474 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表