Actualmente tengo este extracto de código que estoy tratando de depurar:

if (white_flag == 1)
    keyboard;
    imshow(rl_img);
    N = N+1; 
    times(times_index,1) = index; 
    while(white_flag == 1)
        imshow(rl_img);
        index = index+1; 

        %%% If statement for when the loop has run out
        if (index >= frames)
            break
        end

        %%% Initial Image Pre-Processing
        rl_img = ones(mod_height,width);
        pre_rl_img = medfilt2(vreader.read(index));
        for i = 1:mod_height
            for j = 1:width
                rl_img(i,j) = pre_rl_img(i,j); 
            end
        end

        white_flag = detect_white( rl_img, white_flag );
    end
    times(times_index,2) = index;
    times_index = times_index+1; 
else 
    index = index+ 1;
end

Ahora, como puede ver, la llamada de entrada de teclado de depuración keybaord está en la segunda línea. Si bien esto me permite ver de manera eficiente cada paso de la ejecución de mi programa, no entiendo cómo omitir la parte siguiente:

        for i = 1:mod_height
            for j = 1:width
                rl_img(i,j) = pre_rl_img(i,j); 
            end
        end

Esta es una imagen bastante grande (rl_img), por lo que esperar la entrada del teclado mientras escribo el código manualmente es una pérdida de tiempo. ¿Alguien puede decirme cómo omitir la ejecución de entrada de usuario de estas líneas de código mientras depuro el programa?

No dude en hacerme cualquier pregunta que pueda aclarar este problema. ¡Gracias por todas tus respuestas!

0
SDG 29 ene. 2016 a las 15:45

2 respuestas

La mejor respuesta

La respuesta es bastante sencilla:

  1. establece un punto de interrupción después del ciclo largo,

  2. cuando decida ejecutar automáticamente todo el resto del ciclo hasta el punto de interrupción que acaba de establecer, presione [F5] (Continuar).

Esto supone que depura su código en el IDE de MATLAB normal.

2
user2271770user2271770 29 ene. 2016 a las 12:52

Si entiendo tu problema correctamente, no querrás pasar por cada iteración del ciclo.

Puede seguir los consejo de CST-Link o puede evitar la creación de puntos de interrupción adicionales colocando el cursor en algún lugar después del bucle.

enter image description here

Y haciendo clic ingrese la descripción de la imagen aquí en el panel de depuración del editor.

2
Community 23 may. 2017 a las 12:16