社区
非技术区
帖子详情
请教:种子填充法
hflyingheart
2006-12-21 08:30:13
请教各位:
一个矩形内4个物体(不同的两类),在矩形内画了一条线,如何判断这条线是否将这四个物体正确分类? 有人说用种分填充法,什么是种子填充法,哪位可以提供一点相关资料?
谢啦!!
...全文
722
8
打赏
收藏
请教:种子填充法
请教各位: 一个矩形内4个物体(不同的两类),在矩形内画了一条线,如何判断这条线是否将这四个物体正确分类? 有人说用种分填充法,什么是种子填充法,哪位可以提供一点相关资料? 谢啦!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hflyingheart
2006-12-23
打赏
举报
回复
回jixingzhong:[遇到最近的边界就停止继续延伸了 ~~]
=====================================================================
关于扫描线种子填充法:
从左往右扫描时,遇到最近的边界b1就停止继续延伸了.什么时候再开始呢?
1. . . . . . . b . p b0 . . . q b8 . . . . . .
2. L b . u b1 b2 . w b3 b4 . x b5 b6 b7 . . v b .
如上所示,是从b2再次开始吗?若是,那么当再次从b2开始,是否遇到最近的边界b3就记下新的种子w并再次停止,然后再次从b4开始呢?对于b5,b6,b7三个连续的情况也是到b5停止,再从b7开始呢?也就是说对于在当前扫描线上遇到最近的边界点停止后,在这个边界点旁边有多个边续的边界点,是否下次开始时就从这些连续点中最后那个开始呢?
之前没学过图形学,现在要用了,才查资料,种子填充法看明白了,可是扫描线种子填充法却不太明白.前面的图示就是看书上的,怎么想都不明白.麻烦高手您再讲解一下.先在此多谢了!!
hflyingheart
2006-12-23
打赏
举报
回复
谢谢各位指点!
我所说的问题分类正确与否的标准是:在闭合的矩形内,固定了起点和终点,从起点到终点画一条连续的线,把矩形内的四个物体(如:1,2,3,4四个数字分成奇偶两类)分成两类.
现在把它当成四连通区域来用种子填充法处理,出现了问题,由于种子填充算法需更多的栈空间,在程序运行时出现了死机.据说种子扫描线算法会少用一些栈空间.哪位可以提供扫描线种子填充法的代码?
jixingzhong
2006-12-22
打赏
举报
回复
判断这条线是否将这四个物体正确分类
=================
问题是 分类 正确与否的标准,
也就是怎么分类的。
比如是 分 物体闭合与否,
就可以用种子填充,
给定一个种子,
如果闭合的,
那么只能填充物体内部, 或者只能填充外部,
而对于非闭合的, 则是整个区域被填充了 ~~
jixingzhong
2006-12-22
打赏
举报
回复
用C实现多边形的种子填充算法:
/* WIN-TC BGI 图形编程模板 */
#include "Conio.h"
#include "graphics.h"
#define closegr closegraph
void initgr(void) /* BGI初始化 */
{int gd=DETECT,gm=0; /* 和gd=VGA,gm=VGAHI是同样效果 */
registerbgidriver(EGAVGA_driver);/* 注册BGI驱动后可以不需要.BGI文件的支持运行 */
initgraph(&gd,&gm,"");
}
void seedfilling(x,y,fill_color,boundary_color)
int x,y,fill_color,boundary_color;
{
int c;
c=getpixel(x,y); /*获取当前点的颜色*/
if((c!=boundary_color)&&(c!=fill_color)) /*如果颜色为边界色则不填充*/
{
putpixel(x, y, fill_color); /*画点*/
getch(); /*加上这条语句可以显示填充状态 */
seedfilling(x+1,y, fill_color, boundary_color);
seedfilling(x-1,y, fill_color, boundary_color);
seedfilling(x, y+1, fill_color, boundary_color);
seedfilling(x, y-1, fill_color, boundary_color);
}
}
void main()
{
int a,b,color;
int gd=DETECT , gm;
int poly[10];
a=150 ;
b=140;
color=4;
initgraph(&gd , &gm , "");
poly[0] = 110; /* 第一个点的x坐标以及y坐标 */
poly[1] = 110;
poly[2] = 200; /* 第二点 */
poly[3] = 105;
poly[4] = 170; /* 第三点 */
poly[5] = 120;
poly[6]=150; /*第四点*/
poly[7]=170;
poly[8]=110; /*多边形的起点与终点一样*/
poly[9]=110;
drawpoly(5,poly);/* 显示各点连接起来的多边形 */
seedfilling(a,b,color,15); /*种子填充多边形*/
getch();
closegraph();
}
jixingzhong
2006-12-22
打赏
举报
回复
计算机图形学,
楼主随便找本书就有,
它是 计算机图形学 的基础内容,
基本上所以的 图形学入门/提高 的书籍都有讲解
zdywqy
2006-12-22
打赏
举报
回复
up
YouTuBe
2006-12-22
打赏
举报
回复
帮顶:)
debehe
2006-12-21
打赏
举报
回复
种子填充是 计算机图形学里的一个基本填充算法,你可以看一下下面
http://course.cug.edu.cn/cugFirst/computer_graphics/class/course/2-3-2-a.htm
用C实现多边形的种子填充算法
http://dev.csdn.net/article/48/48591.shtm
人工智能:深度学习入门到精通实战
第十一章:卷积神经网络 11.01-卷积神经网络 11.02-卷积神经网络的组成层 11.03-图像分类的局限性 11.04-二维卷积层与卷积层 11.05-卷积在图像中的直观作用 11.06-实验19-二维卷积层 11.07-
填充
与步幅 11.08-卷积...
优秀的ui设计作品(合集)
回想这这四年的学习,多位老师的理论给我带来了心智的启迪、情感的熏陶和精神的享受,我感受着新思潮、新理念的激荡,他们以鲜活的案例和丰富的知识内涵及精湛的理论阐述,给了我强烈的感染和深深的理论引领,我受益匪浅。总结可以帮助我们反思现有的设计思路流程,重视设计的公司一般会有每周的总结例会和分享,这是一个很好的根据现有产品去反思总结的方式,当再有新的需求的时候,我们也可以很好很快的理解业务需求,按照之前反思总结的方式,加入自己新的思考,不断改善,做的更好。如果是
填充
型的图标,那么一套设计里不要出现线性的图标设计。
Qt开发经验(转载)
本文转载于https://qtchina.blog.csdn.net/?type=blog,feiyangqingyun的博客,感谢大佬的经验分享。 默认QtCreator是单线程编译,可能设计之初考虑到尽量不过多占用系统资源,而现在的电脑都是多核心的,默认msvc编译器是多线程编译的不需要手动设置,而对于其他编译器,需要手动设置才行。 方
法
一:在每个项目的构建设置中(可以勾选一个 shadow build 的页面地方)的build步骤,make arguments增加一行 -j16 即可,此设置会保
ORers‘ Bling Chat | 【高光聊天记录集锦-01】:运小筹读者群里那些热烈的讨论
ORers' Bling Chat | 【高光聊天记录集锦-01】:运小筹读者群里那些热烈的讨论前言1. 关于置信水平如何取值的问题2. 关于各类solver的讨论3. 关于最小冲突集、冲突集的讨论4. 关于MP论文的讨论5. 关于gurobi的log (1)5. 关于gurobi的log (2)6. 关于双层规划的讨论7. 关于特征工程方面的讨论8. 关于gurobi约束写
法
的讨论9. 关于gurobi多次求解结果不同的讨论10. 关于RL推导的讨论11. 关于gurobi中变量lb的设定12. 各类资源
攻防世界 pwn 二进制漏洞简单题练习区 答题(1-10题解)
序 1、level0 题目描述:菜鸡了解了什么是溢出,他相信自己能得到shell 题目思路: 首先使用checksec检查文件保护机制,是多少位的程序。 64位程序,栈不能执行 继续丢入IDA。 输出字符串helloWord之后执行vulnerable_function()函数,没有与用户交互。 进入vulnerable_function函数,通过伪代码分析逻辑,发现了栈溢出漏洞。 发现buf数组只有0x80字节,但是read函数从中读了0x200个。 或许咱们能够进行溢出,覆盖掉返回地址,
非技术区
15,440
社区成员
58,167
社区内容
发帖
与我相关
我的任务
非技术区
C/C++ 非技术区
复制链接
扫一扫
分享
社区描述
C/C++ 非技术区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章