Как найти границу изображения с помощью растрового изображения в C#?
Я хочу создать границу изображения с помощью растрового изображения, но какой-то пиксель остается на границе рисования.
Dataatable Data
GetImageDataId PixelName PixelA PixelR PixelG PixelB PixelXCordinate PixelYCordinate
1 ffbcbcbc 255 188 188 188 0 0
2 ffb5b5b5 255 181 181 181 0 1
3 ffb7b7b7 255 183 183 183 0 2
4 ffb7b7b7 255 183 183 183 0 3
5 ffb7b7b7 255 183 183 183 0 4
Код
if (dt1.Rows.Count > 0)
{
int p = 2;
progressBar1.Visible = true;
for (int r = dt1.Rows.Count - 1; r >= 1; r--)
{
if (dt1.Rows[r]["PixelName"].ToString() == "ffb7b7b7")
{
// DataTable dtf = dt1.Select("PixelYCordinate='" + r + "'AND PixelXCordinate ='" + Convert.ToInt32(r - 1) + "'").CopyToDataTable();
// DataTable dtp = dt1.Select("PixelXCordinate='" + r + "'AND PixelYCordinate ='" + Convert.ToInt32(r - 1) + "'").CopyToDataTable();
if (dt1.Rows[r]["PixelName"].ToString() == dt1.Rows[r - 1]["PixelName"].ToString() && dt1.Rows[r]["PixelName"].ToString() == "ffb7b7b7")
{
}
else if (dt1.Rows[r]["PixelName"].ToString() == "ffb7b7b7")
{
for (int k = 0; k < p; k++)
{
b.SetPixel(Convert.ToInt32(dt1.Rows[r]["PixelXCordinate"]), Convert.ToInt32(dt1.Rows[r - k]["PixelYCordinate"]), Color.FromArgb(255, 255, 0, 0));
pictureBox1.Image = b;
}
}
r = r - p - 1;
}
}