我尝试使用以下代码计算PHP中的欧几里德距离,但花费的时间非常长。我想测试如果我在C中执行相同的操作,如果它会更快。输入数据应该从php传递,而其他所有数据都存储在mysql数据库中。如何快速操作,因为我必须计算每个具有约900个属性的30,000个图像的距离。那么如何让C中的计算速度比PHP更快?我还没有编程在C很多,所以任何建议将不胜感激。C中的欧几里德距离计算

在PHP中用于计算距离的查询可以概括如下:

SELECT tbl_img.img_id,

tbl_img.img_path,

((pow(($r[9]-coarsewt_1),2))+(pow(($r[11]-coarsewt_2),2))+ ... +(pow(($r[31]-coarsewt_12),2))+

(pow(($r[36]-finewt_$wt1),2))+(pow(($r[38]-finewt_$wt2),2))+(pow(($r[40]-finewt_$wt3),2))+

(pow(($r[43]-shape_1),2))+(pow(($r[44]-shape_2),2))+ ... +(pow(($r[462]-shape_420),2))+

(pow(($r[465]-texture_1),2))+(pow(($r[466]-texture_2),2))+ ... +(pow(($r[883]-texture_419),2))+(pow(($r[884]-texture_420),2)))

as distance

FROM tbl_img

INNER JOIN tbl_coarsewt

ON tbl_img.img_id=tbl_coarsewt.img_id

INNER JOIN tbl_finewt

ON tbl_img.img_id=tbl_finewt.img_id

INNER JOIN tbl_shape

ON tbl_img.img_id=tbl_shape.img_id

INNER JOIN tbl_texture

ON tbl_img.img_id=tbl_texture.img_id

WHERE tbl_img.img_id>=1 AND tbl_img.img_id<=31930

ORDER BY distance ASC LIMIT 6

+1

这个问题是不是与语言,但算法 –

2013-05-02 06:36:57

c语言欧几里德距离函数,C中的欧几里德距离计算相关推荐

  1. R语言使用zoo包中的rollapply函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性

    R语言时间序列数据滚动相关性分析(Rolling correlations).R语言使用zoo包中的rollapply函数计算两个时间序列数据列之间的滚动相关性(Rolling correlation ...

  2. c语言中二维数组中维数的计算,数组指针字符串C语言程序设计-第4章.ppt

    <数组指针字符串C语言程序设计-第4章.ppt>由会员分享,可在线阅读,更多相关<数组指针字符串C语言程序设计-第4章.ppt(132页珍藏版)>请在人人文库网上搜索. 1.程 ...

  3. c语言中二维数组中维数的计算,2015年计算机二级《C语言》考试上机测试题(4)

    21.B.[解析]y--的作用是先取其值作为表达式的值,然后Y的值减1存入Y.当y>0时循环继续,直到y=0时循环结束,然后Y值减l存入Y中,所以选B. 22.C.[解析]本题中,语句print ...

  4. C语言 求出平面直角坐标系中两点的距离

    #include <math.h> #include <stdio.h>double dist(double x1, double y1, double x2, double ...

  5. Matlab中点到直线距离计算

    P-点坐标:Q1, Q2线上两点坐标 三维空间复制内容到剪贴板代码: d = norm(cross(Q2-Q1,P-Q1))/norm(Q2-Q1); 二维空间 d = abs(det([Q2-Q1, ...

  6. 傅里叶描述子欧氏距离_机器学习中的各种距离

    让我们一起 改变智造 hi,大家国庆都玩的怎么样啊? 是不是很诧异我现在才问候国庆的事情? 因为我今天才刚刚上班(呵呵,怎么可能) 加班加到"秃"起~ 即使这样我也要继续伴随大家去 ...

  7. 欧几里德算法与扩展的欧几里德算法及乘法逆元

    欧几里德算法与扩展的欧几里德算法及乘法逆元 欧几里德算法 扩展的欧几里德算法 乘法逆元 以下提到的数都是整数. 欧几里德算法 欧几里德算法用于求解最大公倍数,也就是辗转相除法.其结论非常简洁,对任意整 ...

  8. log包在Golang语言的标准库中是怎么使用的?

    Golang 语言的标准库中提供了一个简单的 log 日志包,它不仅提供了很多函数,还定义了一个包含很多方法的类型 Logger.但是它也有缺点,比如不支持区分日志级别,不支持日志文件切割等. 01. ...

  9. R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤、条件推理决策树是传统决策树的一个重要变体、条件推理树的分裂是基于显著性测试而不是熵/纯度/同质性度量来选择分裂

    R语言使用party包中的ctree函数构建条件推理决策树的流程和步骤(Conditional inference trees).条件推理决策树是传统决策树的一个重要变体.条件推理树的分裂是基于显著性 ...

最新文章

  1. 查看网口命令_20个常用Linux命令
  2. oracle 每日归档量,小知识:统计Oracle的日归档量
  3. hcharts生成图表
  4. OpenStack精华问答 | OpenStack的目标是什么?
  5. 【读书笔记】the TeXBook 1
  6. 初学者注意:你需要明白编程的意义所在,否则是学不好编程的!
  7. mysql 命令 utf8_Mysql 统一设置utf8字符
  8. java enum 2d array,Java-打印2D数组的最佳方法?
  9. Spring 学习笔记---Bean的生命周期
  10. (二)UDPSocket 客户端编写(超详细)
  11. IBM x3850 x5U盘启动或光驱启动不起作用
  12. 已解决:Torch not compiled with CUDA enabled
  13. 编写Transact-SQL语句
  14. 精选——Hive十道面试题(上)
  15. Office 2007兼容工具包
  16. Linux操作系统PS命令详细 解析
  17. 全球著名的十位质量大师
  18. 【Kubernetes系列】Pod
  19. 别以为“质量门”是惠普的专利!
  20. 深度学习|卷积神经网络

热门文章

  1. linux pcie基本操作
  2. 电子商务设计师教程 电子版_设计电子商务产品组合:标题和英雄
  3. Java 中的箭头->运算符
  4. php pdo性能,深入分析PHP PDO配置及使用方法
  5. 构建高质量的持续交付体系
  6. HTML网页入门之注释怎么写
  7. Ubuntu 18.04安装腾达Tanda U6无线网卡(RTL8192EU)驱动
  8. 天天基金股票数据爬取
  9. 【英语单词2017 06 02 1】
  10. UnixBench的七个影响要素