написание алгоритма в псевдокоде с использованием данного примера псевдокода - PullRequest
0 голосов
/ 11 декабря 2019

Во-первых, я должен отметить, что название вопроса не ясно. Позвольте мне попробовать здесь.

Хорошо, у меня есть алгоритм, подобный этому:

Мы сравниваем каждый отдельный пиксель порогового изображения и серого изображения, и если значение пикселя на соответствующемрасположение обоих изображений не черное, мы помечаем значение этого пикселя как белое;если условие не выполняется, мы помечаем его как черный.

Я написал (своего рода) псевдокод алгоритма, и он приводится ниже:

For each row of thresholded image:
   For each column of thresholded image:
      Get pixel value assigned to thresh_img

      For each row of gray image:
         For each column of gray image:
            Get pixel value assigned to gray_img

            If thresh_img AND gray_img != 0:
       thresh_img = 255
            Else:
       thresh_img = 0

Тем не менее, это было неправильно, и мне предоставили этот пример:

Алгоритм 1 TransformGraph (G) <- вот как обеспечивается алгоритм с именем </em>

#dist(L) is the cost of the link L
n=number_of_nodes(G)
#construct nodes
dnode=array[n*n]
#construct links
for(i=1 to n)
    for(j=1 to n)
   {
       foreach (x in link[i, x])
      {
          create dlink[ij, xj]
          dist(dlink[ij, xj])=dist(link[i, x])
       }
       foreach (y in link[j, y])
      {
          create dlink[ij, iy]
          dist(dlink[ij, iy])=dist(link[j, y])
       }
    } 
return DG=graph(dnode, dlink)

Затем я попытался повторить мой алгоритм, как в приведенном примере ( Я не знаю, какой это псевдокод стиля ), но вот что я сделал:

Алгоритм 1 RegionExtraction * <- так я назвал свой алгоритм *</strong>

ti=thresholded_image
gi=gray_image
rt=number_of_rows_of_ti
ct=number_of_columns_of_ti
vt=pixel_value_assigned_to_ti
rg=number_of_rows_of_gi
cg=number_of_columns_of_ gi
vg=pixel_value_assigned_to_ gi

for(i=1 to rt)
{
    for(j=1 to ct)
    {
        vt = ti[i,j]
        for(k=1 to rg)
        {
            for(l=1 to cg)
            {
                vg=gi[k,l]
                if ti && gi !=0
                {
                    ti=255
                }
                else
                {
                    ti=0
                }
            }
        }
    }
}

Но я не уверен, правильно ли я его написал. Я думаю, что нет другого места, чтобы проверить, правильно ли я поступил.

СЕЙЧАС ВОПРОС : Я правильно написал? Если нет, пожалуйста, помогите мне с этим! Спасибо

...