使标志取决于计数器c#
本文关键字:计数器 取决于 标志 | 更新日期: 2023-09-27 18:29:28
我想在程序中创建一个依赖于cntkotak的标志。这是我的cntkotak,它将一直计算到3。在cntkotak计数过程中,我的标志变量将根据cntkodak的值而增加。例如,我的cntkotak值为3,我的标志将为flag3=true。如果我的cntkotak值为2,则我的标志将为flag2=true。这有点像bool flag+cntkotak=true,但它不起作用。这是我的想法,但我不知道如何实现。请帮助我
foreach (var filePath in templateImage)
{
counterbanyaktemplate++;
for (cntkotak = 0; cntkotak < banyakkotak; cntkotak++)
{
Image<Bgr, byte> templates = new Image<Bgr, byte>(filePath);
imageToShow.ROI = new Rectangle(x1 + ((tempwidth / banyakkotak) * cntkotak), y1, tempwidth / banyakkotak, tempheight);
using (Image<Gray, float> result = imageToShow.MatchTemplate(templates, Emgu.CV.CvEnum.TM_TYPE.CV_TM_CCOEFF_NORMED))
{
double[] maxValues, minValues;
Point[] maxLoc, minLoc;
result.MinMax(out minValues, out maxValues, out minLoc, out maxLoc);
if (counterbanyaktemplate == ((cntkotak + 1) + (banyakkotak * pengali)))
{
if (maxValues[0] > 0.8)
{
//here i want to make a flag that depend on cntkotak.
if(flag == true)
{
Rectangle match = new Rectangle(x1 + ((tempwidth / banyakkotak) * cntkotak), y1, tempwidth / banyakkotak, tempheight);
newImage.Draw(match, new Bgr(Color.Green), 1);
}
else
{
Rectangle match = new Rectangle(x1 + ((tempwidth / banyakkotak) * cntkotak), y1, tempwidth / banyakkotak, tempheight);
newImage.Draw(match, new Bgr(Color.Red), 1);
}
if (cntkotak == banyakkotak - 1)
{
cntkotak = -1;
pengali++;
}
if (pengali == banyakkotak - 1)
{
pengali = 0;
}
}
}
}
}
如果你想设置多个标志值,那么我认为你可以为标志设置一个bool数组,然后根据cntkotak值设置适当的值。即使用cntkodak值作为数组的索引,并将其设置为true或false。