MainWindow.xaml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <Window x:Class="MaskPostProcessTest.MainWindow"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:local="clr-namespace:MaskPostProcessTest"
  7. mc:Ignorable="d"
  8. Title="MainWindow" Height="600" Width="1000">
  9. <Grid>
  10. <Grid.RowDefinitions>
  11. <RowDefinition Height="*"/>
  12. <RowDefinition Height="40"/>
  13. <RowDefinition Height="40"/>
  14. <RowDefinition Height="40"/>
  15. <RowDefinition Height="40"/>
  16. <RowDefinition Height="40"/>
  17. <RowDefinition Height="40"/>
  18. </Grid.RowDefinitions>
  19. <Grid Grid.Row="0">
  20. <Grid.ColumnDefinitions>
  21. <ColumnDefinition Width="0.5*"/>
  22. <ColumnDefinition Width="0.5*"/>
  23. </Grid.ColumnDefinitions>
  24. <Grid Grid.Column="0" x:Name="GridOrigImg" SizeChanged="Canvas_SizeChanged">
  25. <Canvas x:Name="MyCanvas" MouseLeftButtonDown="Canvas_MouseLeftBtnDown" MouseLeftButtonUp="Canvas_MouseLeftBtnUp" MouseMove="Canvas_MouseMove">
  26. <Image x:Name="ImgOrig" Stretch="Fill">
  27. <Image.RenderTransform>
  28. <ScaleTransform x:Name="OrigImgScaleTramsform"/>
  29. </Image.RenderTransform>
  30. </Image>
  31. </Canvas>
  32. </Grid>
  33. <Grid Grid.Column="1">
  34. <Image x:Name="ImgDst" Margin="4,4,4,4" Source="{Binding}"/>
  35. </Grid>
  36. </Grid>
  37. <Grid Grid.Row="1">
  38. <StackPanel Orientation="Horizontal">
  39. <TextBlock Margin="4,4,4,4" Text="宽:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  40. <TextBox x:Name="TextBoxWidth" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  41. <TextBlock Margin="4,4,4,4" Text="高:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  42. <TextBox x:Name="TextBoxHeight" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  43. <Button Margin="4,4,4,4" Content="创建一幅空的mask图像" Width="160" FontSize="12" Click="BtnGenEmptyMaskClicked"/>
  44. <Button Margin="4,4,4,4" Content="加载一幅图像" Width="100" FontSize="12" Click="BtnLoadOneImageClicked"/>
  45. <TextBlock Margin="4,4,4,4" Text="核尺寸:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  46. <TextBox x:Name="TextBoxKernelSize" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  47. <Button Margin="4,4,4,4" Content="按绘制的轮廓进行抠图" Width="160" FontSize="12" Click="BtnGenMaskedImageClicked"/>
  48. </StackPanel>
  49. </Grid>
  50. <Grid Grid.Row="2">
  51. <StackPanel Orientation="Horizontal">
  52. <Button Margin="4,4,4,4" Content="根据绘制的轮廓生成mask" Width="160" FontSize="12" Click="BtnGenMaskClicked"/>
  53. <TextBlock Margin="4,4,4,4" Text="面积:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  54. <TextBox x:Name="TextBoxContourArea" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  55. <TextBlock Margin="4,4,4,4" Text="个数:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  56. <TextBox x:Name="TextBoxContourNum" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  57. <Button Margin="4,4,4,4" Content="对mask图像进行筛选" Width="160" FontSize="12" Click="BtnPostProcessOneMaskImgClicked"/>
  58. </StackPanel>
  59. </Grid>
  60. <Grid Grid.Row="3">
  61. <StackPanel Orientation="Horizontal">
  62. <ComboBox x:Name="ComboBoxContours" Margin="4,4,4,4" Width="120" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"
  63. SelectionChanged="ComboBoxSelectionChanged"/>
  64. <TextBlock Margin="4,4,4,4" Text="优先级" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  65. <TextBox x:Name="TextBoxContourPriority" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  66. <TextBlock Margin="4,4,4,4" Text="Label" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  67. <TextBox x:Name="TextBoxContourLabel" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  68. <TextBlock Margin="4,4,4,4" Text="Confidence" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  69. <TextBox x:Name="TextBoxContourConfidence" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  70. <Button Margin="4,4,4,4" Content="设置优先级" Width="100" FontSize="12" Click="BtnSetPriorityClicked"/>
  71. <TextBlock Margin="4,4,4,4" Text="核尺寸:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  72. <TextBox x:Name="TextBoxKernelSizeMerge" Margin="4,4,4,4" Width="40" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  73. <Button Margin="4,4,4,4" Content="根据优先级对轮廓进行合并" Width="160" FontSize="12" Click="BtnPostProcessContourMergeClicked"/>
  74. </StackPanel>
  75. </Grid>
  76. <Grid Grid.Row="4">
  77. <StackPanel Orientation="Horizontal">
  78. <TextBlock Margin="4,4,4,4" Text="轮廓组" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  79. <TextBox x:Name="TextBoxContourGroup" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  80. <Button Margin="4,4,4,4" Content="设置轮廓组" Width="100" FontSize="12" Click="BtnSetGroupClicked"/>
  81. <Button Margin="4,4,4,4" Content="计算所绘制轮廓的重合率" Width="160" FontSize="12" Click="BtnPostProcessIntersectionAreaClicked"/>
  82. <TextBlock Margin="4,4,4,4" Text="重合率IOU:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  83. <TextBox x:Name="TextBoxIntersectionIouRatio" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  84. <TextBlock Margin="4,4,4,4" Text="IOS1(1交2比上1):" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  85. <TextBox x:Name="TextBoxIntersectionIos1Ratio" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  86. <TextBlock Margin="4,4,4,4" Text="IOS2(1交2比上2):" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  87. <TextBox x:Name="TextBoxIntersectionIos2Ratio" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  88. </StackPanel>
  89. </Grid>
  90. <Grid Grid.Row="5">
  91. <StackPanel Orientation="Horizontal">
  92. <TextBlock Margin="4,4,4,4" Text="轮廓1" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  93. <ComboBox x:Name="ComboBoxContoursSelect1" Margin="4,4,4,4" Width="120" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"
  94. SelectionChanged="ComboBoxSelectionChanged"/>
  95. <TextBlock Margin="4,4,4,4" Text="轮廓2" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  96. <ComboBox x:Name="ComboBoxContoursSelect2" Margin="4,4,4,4" Width="120" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"
  97. SelectionChanged="ComboBoxSelectionChanged"/>
  98. <Button Margin="4,4,4,4" Content="计算所选轮廓质心与质心间距离" Width="160" FontSize="12" Click="BtnPostProcessCentroidDistanceClicked"/>
  99. <TextBlock Margin="4,4,4,4" Text="轮廓1质心" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  100. <TextBox x:Name="TextBoxCenter1" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  101. <TextBlock Margin="4,4,4,4" Text="轮廓2质心:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  102. <TextBox x:Name="TextBoxCenter2" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  103. <TextBlock Margin="4,4,4,4" Text="两质心间距离:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  104. <TextBox x:Name="TextBoxCentroidDistance" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  105. </StackPanel>
  106. </Grid>
  107. <Grid Grid.Row="6">
  108. <StackPanel Orientation="Horizontal">
  109. <TextBlock Margin="4,4,4,4" Text="轮廓1" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  110. <ComboBox x:Name="ComboBoxContourOne" Margin="4,4,4,4" Width="120" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"
  111. SelectionChanged="ComboBoxSelectionChanged"/>
  112. <TextBlock Margin="4,4,4,4" Text="轮廓2" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  113. <ComboBox x:Name="ComboBoxContourTwo" Margin="4,4,4,4" Width="120" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"
  114. SelectionChanged="ComboBoxSelectionChanged"/>
  115. <Button Margin="4,4,4,4" Content="计算两个轮廓的最短距离" Width="160" FontSize="12" Click="BtnPostProcessShortestDistanceClicked"/>
  116. <TextBlock Margin="4,4,4,4" Text="最短距离:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  117. <TextBox x:Name="TextBoxShortestDistance" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  118. <TextBlock Margin="4,4,4,4" Text="X方向的距离" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  119. <TextBox x:Name="TextBoxContourXDirectionDistance" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  120. <TextBlock Margin="4,4,4,4" Text="Y方向的距离:" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  121. <TextBox x:Name="TextBoxContourYDirectionDistance" Margin="4,4,4,4" Width="80" FontSize="12" VerticalAlignment="Center" HorizontalAlignment="Center"/>
  122. </StackPanel>
  123. </Grid>
  124. </Grid>
  125. </Window>