Crater Detection via Convolutional Neural Networks JosephPaulCohen, HenryZ.Lo, TingtingLu, andWeiDingattheUniversityofMassachusettsBoston({joecohen, henryzlo,ding}@cs.umb.edu,[email protected]) Input Image Introduction Convolutional Activations Cratersareamongthemoststudiedgeomorphicfeatures in the Solar System because they yield important information about the past and present geological processesandprovideinformationabouttherelativeages of observed geologic formations. We present a method for automatic crater detection using advanced machine 66 104 100 -2 -1 -2 learningtodealwiththelargeamountofsatelliteimagery collected. 105 110 255 0 0 0 315 6 The challenge of automatically detecting craters 160 201 115 2 1 2 Output 1 comesfromtheiriscomplexsurfacebecausetheirshape 3x3 3x3 0 erodesovertimetoblendintothesurface. Bandeira[1] Input Window Convolutional Filter 2 providedaseminaldatasetthatembodiedthischallenge n that is still an unsolved pattern recognition problem to Figure1: Convolutionallayer a this day. There has been work to solve this challenge J basedonextractingshape[2]andcontrast[1,3]features layers have an input which is a vector x of the previous 5 andthenapplyingclassificationmodelsonthosefeatures. layers outputs. These layers contain many nonlinear ] Thelimitingfactorinthisexistingworkistheuseof units. A nonlinear unit is a transformation h (x) which V θ handcraftedfiltersontheimagesuchasGabororSobel produces a single value where θ is a vector of weights. C filters or Haar features. These hand crafted methods The most modern practice is to use a rectified linear . rely on domain knowledge to construct. We would unit(ReLU):h (x) = max(0,(cid:80) θ x ). Theθ value s θ i=0 i i c like to learn the optimal filters and features based on at this layer will be altered during training in order to [ training examples. In order to dynamically learn filters minimizeclassificationerror. 1 andfeatureswelooktoConvolutionalNeuralNetworks 4x4 Filter v (CNNs)whichhaveshowntheirdominanceincomputer 8 vision [4]. The power of CNNs is that they can learn 4x4 Filter . . . 7 image filters which generate features for high accuracy 9 classification. 0 ......... 1.0 theCinNpuNtsimaraegoerghaansizceodmapsutaatcioonmsppuetarftioornmegdrapohn withaenrde ... . . . 0 produce an output, then this output has computations 2 O(uetp) uts 6 performedonit,andthisisrepeateduntilanoutputlayer (c) Convolutional 1 whichcontainsaprediction.Therearemanycomponents (a) Input Image Layers (x20) . . . v: tothesenetworksbutthemostsignificantparttodiscuss (15x15) (b) Convolutional (d) i istheconvolutionallayerandthefullyconnectedlayer. Layers (x20) 500 Outputs X Figure 2: Crater Convolutional Neural Network (CNN) First we talk about a convolutional layer because r architecturecomputation graph. Each layerisidentified a this is the interface between the input image and the withaletterandlinesshowprocessingfromlefttoright. network. In Figure 1 the process of a convolutional layer is shown. A sliding window is ran across the We combine the convolutional layers with fully inputimagewithaconvolutionappliedateachposition. connected layers in a specific configration that has Each pixel is multiplied by the corresponding filter achievedgoodperformanceoncraterdetectioninFigure value and summed together which results in a single 2. Layer (a) is a 15x15 input image. Each candidate value. A picture is formed from the results of these example is scaled to this size. Layers (b) and (c) are convolutions. This design is important because spatial convolutional layers with 20 filters each of size 4x4. informationismaintainedtobeusedlaterinthenetwork. Each filter is passed over the filter in a sliding window In this example the filter values appear to be a sobel fashionwithastrideof1pixel. Unlikesimilarnetworks filter however the filters learned will be much different. wedon’tuseapoolinglayerasitachievedpoorresults. Duringthelearningprocessthevaluesofthefilterswill Layer(d)isafullyconnectedlayerwhereeachelement be altered to minimize classification error of the entire of this layer is the result of h (x) with unique θs for θ network. each element. Layer (e) has just two outputs; each Next we talk about a fully connected layer. These corresponding to a class. A softmax regression is used 2 Region U r b a c h ‘ 0B9 a n d eira ‘D1i0n g ‘ 1 1 C N N West(1 24+1 25) 67.89 85.33 83.98 88.78 Center(2 24+2 25) 69.62 79.35 83.02 88.81 East(3 24+3 25) 79.77 86.09 89.51 90.29 Figure3:Acraterandnon-cratercandidateareprocessed Table1: F1-scorevia10-foldcrossvalidation. by the first convolutional layer. Eight filters with interesting activation patterns are shown to the right of each candidate image in false color. Values are scaled and then colored to make these values visible and to maximize contrast within each square with blue = low andred=high. West1 24 Center2 24 East3 24 so that the results can be interpreted as a probability distributionbetweencratersandnon-craters. The filter and θ values throughout the network are initialized randomly and incrementally modified using stochastic gradient descent to minimize classification error[4]. Thetermepochisatrainingcyclethatincludes everytrainingexample. Weomitthediscussiononhow West1 25 Center2 25 East3 25 trainingworksforspace. Wecanvisualizethefilterslearnedforcraterstogain Figure4: Labelsofeachcraterdatasettile. insightintowhatfeaturesareimportanttoclassification. We visualize 8/20 filters for layer (b) on a crater and non-crater image in Figure 3. The filters, although as a testing set while the remainder is used as a trainng crude, can be seen to show vertical edges as well as setwiththeresultingF1-Scoreaveragedtogether. segmentation. The filters are learned based on what is Our results are shown in Table 1. The scores were nessary to minimize classification error on the training obtained from the respective papers with the exception datasotheydonotdirectlyrelatetowhatacraterisbut of “Urbach ’09” which was obtained from [1] where it maybefocusingonwhatisnotacrater. isusedasabaselinecomparison. OurCNNapproachis Evaluation trainedfor500epochsduringeachfoldevaluation. Our We use Banderia’s [1] dataset1 to evaluate and compare proposed CNN method obtains a higher score than all existingmethods. Weconcludethatconvolutionalneural our method. It originates from the nadir panchromatic networks have a large potential to significantly change imagery footprint h0905 0000 that was captured by the thewaycraterdetectionisperformed. Webelievefurther HRSCaboardtheMarsExpressspacecraft. Thisdataset improvementstothedesignofthecomputationgraphcan is composed of 6 tiles (1700x1700 pixels each) with increaseperformancemuchhigher. resolution 12.5m/pixel. A domain expert has labeled 3658 craters across all tiles. Banderia utilized Urbach References and Stepinski’s [2] highlight and shadow algorithm to [1] L. Bandeira, W. Ding, and T. F. Stepinski, “Automatic avoid brute force sliding window candidate generation Detection of Sub-km Craters Using Shape and Texture and reduce the total number of candidates that must Information,” in Proceedings of the 41st Lunar and PlanetaryScienceConference,Mar.2010. be evaluated. This pre-processing step results in 2022 [2] E. R. Urbach and T. F. Stepinski, “Automatic detection cratersand2888non-cratersacrossalltiles. Theresults of sub-km craters in high resolution planetary images,” ofthispre-processingiswhathasbeenusedinpriorwork PlanetaryandSpaceScience,vol.57,no.7,2009. andisusedinourevaluationaswell. [3] W.Ding,T.F.Stepinski,Y.Mu,L.Bandeira,R.Ricardo, Prior work has used the F1-Score and Y. Wu, Z. Lu, T. Cao, and X. Wu, “Sub-kilometer cross-validation to evaluate their methods. The craterdiscoverywithboostingandtransferlearning,”ACM F1-Score is the harmonic mean between precision and TransactionsonIntelligentSystemsandTechnology,vol.2, recall: F1 = 2·precision·recall. 10-Foldcrossvalidation no.4,Jul.2011. precision+recall is a testing procedure where the dataset is randomly [4] A.Krizhevsky,I.Sutskever,andG.E.Hinton,“ImageNet dividedinto10sectionsandtheneachsectionisselected ClassificationwithDeepConvolutionalNeuralNetworks,” inAdvancesinNeuralInformationProcessingSystems25, 1http://kdl.cs.umb.edu/w/datasets/craters/ 2012.