24小时热门版块排行榜    

查看: 2096  |  回复: 4

张益坤

新虫 (初入文坛)

[求助] Matlab技术在某个圆内的点的个数 已有3人参与

请看图片,谢谢大神教教我,怎么做,或者我要怎么去学习。新手很迷茫

Matlab技术在某个圆内的点的个数
QF2Z1W]BYPAYQR6WIGG~}J8.png
回复此楼
科研有我,我在科研
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
计算出每个点到圆心的距离,小于半径的视为在园内,反之则园外。
2楼2015-11-23 20:38:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

onelightwang

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
2楼给出了基本思路,判断各点是否在圆内,然后每个点作为圆心循环一遍即可。
不过这样循环计算量略大,若数据点数为N,基本要判断N*(N-1)次
当N很大时,计算会比较费时间。

楼主可以通过向量化来提高计算效率。
假设从数据库中提取的圆心坐标序列分别为X,Y。(X,Y都为列向量,假设长度为n)
1.构建一个矩阵【 (x_i-x_j)^2 +(y_i-y_j)^2】_nxn,通过与 r^2的差值,就可以轻易的判断某个点在半径r内的点数。

2,目标矩阵的构造可简化成【(x_i-x_j)^2 】_nxn 矩阵的构建,因为后半部分类似

3.【(x_i-x_j)^2 】_nxn的矩阵可分解为[(x_i)^2  +  (x_j)^2   -2 *(x_i)*(x_j)]_nxn

4.继续分解成3个n x n矩阵,并分别实现
           [(x_i)^2 ]_nxn 的实现:X.^2*ones(size(X,2),size(X,1))
           [(x_j)^2 ]_nxn 的实现:(X.^2*ones(size(X,2),size(X,1)))',把上面的转置一下即可
         【 -2 *(x_i)*(x_j)]_nxn的实现:-2*X*X'
ok,任务完成
楼主按照4到1的顺序编程,就可以看到符合要求的点分布了,最后再用一个sum函数,就可以得到需要的结果饿了。
避免过多循环,可以提高运行速度!
3楼2015-11-23 23:15:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

快乐时光lk

新虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
还有一个方法,跟楼上各位都不同,就是把这数据转换成两张栅格矩阵,第一张圆变成一个面状的矩阵,圆内部设为1,外部设为0。第二张图,点直接转换成1,其他区域转换成0,把两个矩阵相点乘.* 得到的结果图,我们只需统计其中1的个数即为点数

发自小木虫IOS客户端
4楼2015-11-24 01:38:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

快乐时光lk

新虫 (小有名气)

选哪个都要根据数据的特点来选,如果圆是由公式确定的,用上面的的方法很好,但若是不知道圆心或半径或者是shp文件可以考虑我这个方法

发自小木虫IOS客户端
5楼2015-11-24 01:42:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 张益坤 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +11 archvillain 2026-08-04 13/650 2026-08-10 14:41 by seekfind
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 6/300 2026-08-10 14:29 by anjeeshine
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +6 家与远方 2026-08-10 9/450 2026-08-10 14:29 by 爱看书的可乐
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +13 Lanmanbaby 2026-08-09 21/1050 2026-08-10 14:16 by 冰心玉壶晴
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +10 yufeiwaner 2026-08-09 10/500 2026-08-10 13:44 by cdutwml
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
信息提示
请填处理意见