《zw版·Halcon-delphi系列原创教程》 卫星航拍精确打击目标自动识别
这几天,俄罗斯空军在叙利亚大显神威,美军有意见了,说俄罗斯是狂轰滥炸,不是精确打击。
不过,战斗民族也是会进化的,第二天,俄罗斯就show出了精确打击的航拍视频。
精确打击,看起来,高大上,不过,对于今天的机器视觉而言,非常简单。
下面示例的脚本,才30多行,虽然不长,
不过,无人机,卫星遥感、航拍等,相关功能,核心代码,也就是这些代码。
图1,是飞机卫星航拍照片
图2,是首轮目标范围筛选,可以看到有很多细小的感染源,还有几个大型的建筑区域,需要过滤
图3,是最终的识别结果,相关非常不错,该要的区域都在
图4,建筑物分割图,脚本演示的是tree树、植被的的识别,所以,作为军用,打击目标的筛选,需要对图4,进行二次过滤。
这个脚本,略微修改,配合长时间的连续图像分析。
就可用于森林数目、农作物,草原植被、甚至动物。鸟类种群、迁徙、活动等方面的分析
例如,农作物产量推算,鸟类迁徙路线,动物活动区域等等,
ps,有兴趣的网友,可以自己改为delphi、vc、vb版
dev_close_window ()
read_image (Mreut, 'mreut_y')
read_image (MreutDem, 'mreut_dgm_2.0')
get_image_size (Mreut, Width, Height)
dev_open_window (, , Width, Height, 'black', WindowHandle)
get_system ('clip_region', Information)
set_system ('clip_region', 'false')
dev_set_draw ('margin')
dev_set_color ('red')
* do texture segmentation
texture_laws (Mreut, ImageTexture, 'ee', , )
median_separate (ImageTexture, ImageSMedian, , , 'mirrored')
threshold (ImageSMedian, TexturedRegion, , )
dev_display (Mreut)
dev_display (TexturedRegion)
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
* find high objects
scale_image_max (MreutDem, ImageScaleMax)
dual_rank (ImageScaleMax, ImageRank, 'circle', , , 'mirrored')
sub_image (ImageScaleMax, ImageRank, ImageSubRank, , )
threshold (ImageSubRank, High, , )
zoom_region (High, HighLarge, , )
move_region (HighLarge, HighLargeMoved, -, -)
clip_region (HighLargeMoved, HighClipped, , , , )
threshold (Mreut, Dark, , )
intersection (TexturedRegion, Dark, RegionIntersection)
fill_up (RegionIntersection, RegionFillUp)
connection (RegionFillUp, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', , )
closing_circle (SelectedRegions, TexureAndHigh, 2.5)
dev_display (Mreut)
dev_display (TexureAndHigh)
set_system ('clip_region', Information)
【《zw版·Halcon-delphi系列原创教程》,网址,cnblogs.com/ziwang/】