Train histogram models

Visualize training data

trainPos1 = {161, 1} ; trainPos2 = {320, 320} ; trainOffset = {4, 4} ;

trainingVis = BlockMatrix[Partition[TakeMatrix[#, trainPos1, trainPos2] & /@ texImages, 2]] ; ShowImage[trainingVis] ;

[Graphics:../HTMLFiles/index_21.gif]

Generate six-band training data (top half of each image)

time1 = AbsoluteTime[] ; db4 = DaubechiesFilter[4] ; trainingData1 = GenerateSixBandTrainingDa ... TakeMatrix[#, trainPos1, trainPos2], trainOffset, db4] &/@ texImages ; AbsoluteTime[] - time1

38.719438

Perform vector quantization for each band

maxCodes = 6 ;

time1 = AbsoluteTime[] ; trainingData2 = (trainingData1 // Transpose) ; vqTrainingData = Flatt ... Data2 ; centroidsAll = VQAll[#, maxCodes, .0001] & /@ vqTrainingData ; AbsoluteTime[] - time1

220.027727

centroidsAll = Drop[centroidsAll // Transpose, 1] ;

Compute histograms for all levels of quantization

time1 = AbsoluteTime[] ; classes = Table[centroids = centroidsAll[[i]] ; Table[AssignClass[#,  ... mp; /@ trainingData2[[j]], {j, 1, Length[centroids]}], {i, 1, maxCodes}] ; AbsoluteTime[] - time1

44.886015

histAll = Table[ComputeHistograms[#, codes] & /@ classes[[codes]], {codes, 1, maxCodes}] ;


Created by Mathematica  (February 16, 2004)