打印

出售 算法,计步,睡眠和角度

[复制链接]
1164|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
foliages|  楼主 | 2023-12-30 14:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
foliages|  楼主 | 2023-12-31 10:11 | 只看该作者
这核心算法 居然没有干兴趣的

使用特权

评论回复
板凳
lvyunhua| | 2023-12-31 12:12 | 只看该作者
能不能开源啊

使用特权

评论回复
地板
zps136631| | 2023-12-31 13:22 | 只看该作者
开源就很多人有兴趣了

使用特权

评论回复
5
zps136631| | 2023-12-31 13:22 | 只看该作者
开源就很多人有兴趣了

使用特权

评论回复
6
ezcui| | 2023-12-31 13:52 | 只看该作者
朋友,做生意挑错地方了!

使用特权

评论回复
7
gdoujia| | 2023-12-31 14:31 | 只看该作者
角度的算法是指什么

使用特权

评论回复
8
inkfish| | 2024-1-1 11:04 | 只看该作者
现在这东西确实没用了,因为手表都烂大街了。而且个人做这个干不过大公司做的。里面一堆运动算法。光有计步有什么用。

使用特权

评论回复
9
青花瓷001| | 2024-1-1 16:22 | 只看该作者
电工都是穷人,没人会买

使用特权

评论回复
10
储小勇_526| | 2024-1-2 10:37 | 只看该作者
现在小公司所谓的核心都是大厂玩剩下来的,与其卖,不如抖音开个账号去免费教学,说不定有人感兴趣听听,人气涨上来带带货赚点钱补贴家用蛮好的

使用特权

评论回复
评论
foliages 2024-2-2 16:08 回复TA
你的建议 挺好 , 咱们是 做技术的。做直播 可能不是擅长 
11
wzjhuohua| | 2024-1-2 10:41 | 只看该作者
我们都是穷鬼,玩不起

使用特权

评论回复
12
gyh02133| | 2024-1-14 20:47 | 只看该作者
卖不出什么价。没有什么用.

使用特权

评论回复
13
dw772| | 2024-1-17 13:00 | 只看该作者
可以聊聊,大概什么价,电工都是穷人

使用特权

评论回复
14
foliages|  楼主 | 2024-2-2 16:03 | 只看该作者
gdoujia 发表于 2023-12-31 14:31
角度的算法是指什么

比如 你戴个 设备,可以非常准确的计算出,每个角度

使用特权

评论回复
15
foliages|  楼主 | 2024-2-2 16:04 | 只看该作者
dw772 发表于 2024-1-17 13:00
可以聊聊,大概什么价,电工都是穷人

当然可以了 。你要是感兴趣,留个联系方式,我联系你

使用特权

评论回复
16
foliages|  楼主 | 2024-2-2 16:06 | 只看该作者
储小勇_526 发表于 2024-1-2 10:37
现在小公司所谓的核心都是大厂玩剩下来的,与其卖,不如抖音开个账号去免费教学,说不定有人感兴趣听听,人 ...

这个 我只是有 这些算法。这些算法又不是我写的 。

使用特权

评论回复
17
foliages|  楼主 | 2024-2-2 16:06 | 只看该作者
inkfish 发表于 2024-1-1 11:04
现在这东西确实没用了,因为手表都烂大街了。而且个人做这个干不过大公司做的。里面一堆运动算法。光有计步 ...

这个算法 是百度当年的 手环算法

使用特权

评论回复
18
foliages|  楼主 | 2024-2-2 16:27 | 只看该作者
float get_distance_data(int16_t extra_steps, int16_t nstep)
{
    int16_t data_size = PROCESS_BUF_SIZE;
    int16_t peak_step_size = g_peak_save_index;
    float real_dis = 0;
    int32_t dis_ans = 0;
    int32_t steplen = 0;
    int32_t steplen_height = 0;
    int16_t from = 0;
    int16_t i = 0, j = 0;
    int32_t avg_steplen = 0;
    int32_t avg_steplen_count = 0;

    //模型的特征值
    int32_t diff_min_max, step_hz, sex;
    int32_t dt, amean_dt, amean_dt_dt, diffminmax_amean, x_y_z;
    int64_t duringtime;
    int32_t step_hz_count;
    struct CHARACT calcans;
    dis_ans = 0;
    for (i = 1; i < peak_step_size; i++) {
        if (0 == g_step_save[i])
            continue;
        from = i - 1;

        step_hz = g_step_freq_save[i];
        step_hz_count = 1;
        for (j = i - 1; j >= 0 && j >= i - nstep; j--) {
            from = j;
            if (0 == g_step_save[j]){
                break;
            } else{
                step_hz += g_step_freq_save[j];
                step_hz_count++;
            }
        }

        step_hz /= step_hz_count ;
        
        if(g_peak_save[from] > g_peak_save[i] || g_peak_save[from] < 0
            || g_peak_save[i] >= data_size) {
            continue;
        }

        calcans = calc_charact(g_data_compose, data_size , g_peak_save[from] , g_peak_save[i]);

        //height = ((g_hight_cm*ZOOMSIZE - PLAN_MEAN_HEIGHT)*ZOOMSIZE) / PLAN_SD_HEIGHT;
        diff_min_max =((calcans.diff_min_max - PLAN_MEAN_DIFF_MIN_MAX) * ZOOMSIZE) / PLAN_SD_DIFF_MIN_MAX;
        step_hz = ((step_hz - PLAN_MEAN_STEP_HZ) * ZOOMSIZE) / PLAN_SD_STEP_HZ;
        sex = g_isfemale;
        //amean = ((calcans.amean - PLAN_MEAN_AMEAN)*ZOOMSIZE)/PLAN_SD_AMEAN;
        //fat_factor = ((g_weight_kg*10000)/(g_hight_cm*g_hight_cm))*ZOOMSIZE;
        //fat_factor = ((fat_factor - PLAN_MEAN_FAT_FACTOR)*ZOOMSIZE)/PLAN_SD_FAT_FACTOR;
        
        duringtime = (g_data_timestamp[g_peak_save[i]] - g_data_timestamp[g_peak_save[from]]) / step_hz_count;
        dt = (int32_t)duringtime;
        amean_dt = (calcans.amean * dt) / 1000;
        amean_dt_dt = (amean_dt * dt) / 1000;
        //amean_diffminmax = (calcans.amean*ZOOMSIZE)/calcans.diff_min_max;
        diffminmax_amean = (calcans.diff_min_max * ZOOMSIZE) / calcans.amean;
        dt = (dt - PLAN_MEAN_DT) * ZOOMSIZE / PLAN_SD_DT;
        amean_dt = (amean_dt - PLAN_MEAN_AMEAN_DT) * ZOOMSIZE / PLAN_SD_AMEAN_DT;
        amean_dt_dt = (amean_dt_dt - PLAN_MEAN_AMEAN_DT_DT) * ZOOMSIZE/PLAN_SD_AMEAN_DT_DT;
        //amean_diffminmax = (amean_diffminmax - PLAN_MEAN_AMEAN_DIFFMINMAX) * ZOOMSIZE/PLAN_SD_AMEAN_DIFFMINMAX;
        diffminmax_amean = (diffminmax_amean - PLAN_MEAN_DIFFMINMAX_AMEAN) * ZOOMSIZE/PLAN_SD_DIFFMINMAX_AMEAN;
        //r_xyz = (calcans.r_xyz - PLAN_MEAN_R_XYZ) * ZOOMSIZE/PLAN_SD_R_XYZ;
        x_y_z = (calcans.x_y_z - PLAN_MEAN_X_Y_Z) * ZOOMSIZE / PLAN_SD_X_Y_Z;
        
        steplen_height = K_INTERCEPT
            //+ K_HEIGHT * height
            + K_DIFF_MIN_MAX * diff_min_max
            + K_STEP_HZ * step_hz
            //+ K_AMEAN * amean
            + K_SEX * sex
            //+ K_FAT_FACTOR * fat_factor
            + K_DT * dt
            + K_AMEAN_DT * amean_dt
            + K_AMEAN_DT_DT * amean_dt_dt
           // + K_AMEAN_DIFFMINMAX * amean_diffminmax
            + K_DIFFMINMAX_AMEAN * diffminmax_amean
           // + K_R_XYZ * r_xyz
            + K_X_Y_Z * x_y_z;
        steplen = (steplen_height * g_hight_cm) / 100;
        dis_ans += steplen * g_step_save[i];
        avg_steplen_count++;
        avg_steplen += steplen;

#ifdef TEST_TOOL
        acum_step_count++;
        acum_step_len_sum += (double)steplen / (double)(ZOOMSIZE * ZOOMSIZE);
        acum_step_len = (double)acum_step_len_sum / (double)acum_step_count;
#endif
    }
   
    if (avg_steplen_count > 0) {
        s_avg_steplen = avg_steplen / avg_steplen_count;
    }
    dis_ans += s_avg_steplen * extra_steps;
    real_dis =((float)dis_ans) / (ZOOMSIZE * ZOOMSIZE);
    return real_dis;
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

84

帖子

2

粉丝