如何删除由线段和颜色块界定的区域?

| 鉴于下图: A和B的位置是已知的,图片的其余部分只是原始像素数据(仅红色和白色像素)。我可以使用哪种算法擦除AB右侧的零件?     
已邀请:
有两个点定义一条线。线方程式将需要删除的像素分开。如果要以新边界平滑地跟随形状曲线的方式删除点,则需要某种方式来插值形状边界(基于边界中其他点的信息)。此插值必须通过两个黑点。现在,如果您具有插值,则可以计算两个黑点之间的插值曲线,并将曲线右边的所有点都设置为白色。我可以建议从曲线中至少再使用一个点,并使用三次三次样条插值。 编辑: 根据您的评论。 那么该算法就很简单:保持一个从较低点(A)开始并沿边界(A \')移动直到到达另一点的指针。这可以通过检查当前指针位置的邻居并比较颜色来完成。现在,当指针移动时,将红色指针的线从指针(A \')移至在点A-B之间定义的线(蓝色)(绿色)。当该行与另一个黑点相同时(例如A \'和B在同一行上),将有一个指针位置。然后以相同的方式从B点开始绘制一个新指针,以跟踪边框,并删除两个指针A \'和B \'之间的红色像素。       
您需要从A到B绘制线,然后在该线右侧的红色像素之一上开始填充。     

要回复问题请先登录注册