index:.../Indentification/Data-Code/qrcode_deformed.hdev
* This programs shows the robustness of the QR Code reader with
* respect to slight perspective distortions and local deformations
* when dealing with large codes. For this, an artificial image is
* randomly distorted. Three random sequences are tested, where
* the data code is
* 1. perspectively distorted
* 2. locally deformed
* 3. perspectively distorted and locally deformed
*
dev_update_off ()
read_image (Image, 'datacode/qrcode/qr_version_25')
get_image_size (Image, Width, Height)
*
dev_close_window ()
dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle)
set_display_font (WindowHandle, 16, 'mono', 'true', 'false')
dev_set_color ('green')
dev_set_line_width (3)
*
* Create a data code model
create_data_code_2d_model ('QR Code', [], [], DataCodeHandle)
set_data_code_2d_param (DataCodeHandle, 'polarity', 'dark_on_light')
set_data_code_2d_param (DataCodeHandle, 'module_gap', 'no')
*
* 1. Apply perspective distortions
dev_clear_window ()
disp_message (WindowHandle, 'Find QR Code with perspective distortions', 'window', 12, 12, 'white', 'false')
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
*
AmpPersp := 50
AmpDeform := 0
AmpNoise := 50
find_deformed_codes (Image, AmpPersp, AmpDeform, AmpNoise, DataCodeHandle, WindowHandle)
里面应用各种变化的代码都可以借鉴,但并没有仔细看。
*
* 2. Apply local deformations
dev_clear_window ()
disp_message (WindowHandle, 'Find QR Code with local deformations', 'window', 12, 12, 'white', 'false')
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
*
AmpPersp := 0
AmpDeform := 50
AmpNoise := 50
find_deformed_codes (Image, AmpPersp, AmpDeform, AmpNoise, DataCodeHandle, WindowHandle)
*
*
* 3. Apply perspective distortions and local deformations
dev_clear_window ()
disp_message (WindowHandle, ['Find QR Code with perspective distortions','and local deformations'], 'window', 12, 12, 'white', 'false')
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
*
AmpPersp := 50
AmpDeform := 50
AmpNoise := 50
find_deformed_codes (Image, AmpPersp, AmpDeform, AmpNoise, DataCodeHandle, WindowHandle)
*
clear_data_code_2d_model (DataCodeHandle)