Compute mean PRNU estimate from scratch

This commit is contained in:
Benjamin Loison 2024-06-05 16:41:44 +02:00
parent be83fcf154
commit 31da324702
Signed by: Benjamin_Loison
SSH Key Fingerprint: SHA256:BtnEgYTlHdOg1u+RmYcDE0mnfz1rhv5dSbQ2gyxW8B8

View File

@ -12,19 +12,26 @@ folder = '../rafael/230424'
meanImages = iterativeMean()
filePaths = [f'{folder}/{file}' for file in os.listdir(folder) if isARawImage(file)]
for filePath in tqdm(filePaths):
for filePath in tqdm(filePaths, 'Compute mean image'):
imageColorChannels = {color: getColorChannel(filePath, color) for color in Color}
imageMergedColorChannels = mergeSingleColorChannelImagesAccordingToBayerFilter(imageColorChannels)
meanImages.add(imageMergedColorChannels)
#plt.imshow(imageMergedColorChannels)
#plt.show()
#break
#print(meanImages.mean.shape)
#plt.imshow(meanImages.mean)
#plt.show()
# Is not there anything clever than this to do? See [Robust_image_source_identification_on_modern_smartphones/issues/72](https://gitea.lemnoslife.com/Benjamin_Loison/Robust_image_source_identification_on_modern_smartphones/issues/72).
estimatedPrnu = iterativeMean()
for filePath in tqdm(filePaths):
for filePath in tqdm(filePaths, 'Compute estimated PRNU'):
imageColorChannels = {color: getColorChannel(filePath, color) for color in Color}
imageMergedColorChannels = mergeSingleColorChannelImagesAccordingToBayerFilter(imageColorChannels)
estimatedPrnu.add(imageMergedColorChannels - meanImages.mean)
#plt.imshow(estimatedPrnu.mean)
#plt.show()
#break
plt.imshow(estimatedPrnu.mean)
plt.show()