Compare commits
	
		
			73 Commits
		
	
	
		
			prnu_writt
			...
			8748e648b5
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 8748e648b5 | ||
|  | 15c41c0463 | ||
|  | b18080e9f5 | ||
|  | a83e8bb1e0 | ||
| ba452096d5 | |||
| d271b502fa | |||
| 658aa34600 | |||
| 4d267bf540 | |||
| 606821d45e | |||
| b354f59ac5 | |||
| 0f394faa61 | |||
| faed1e33e8 | |||
| 4dd52aae90 | |||
| d3af12ce3e | |||
| aafb7ebc92 | |||
| 631ed6de34 | |||
| f09665f856 | |||
| ea00f42c58 | |||
| 90a806a7e2 | |||
| c69221a336 | |||
| 4df8a4f16e | |||
| dfb384a8be | |||
| 491e7c906b | |||
| 1c7fc33e06 | |||
| 57298e2e2e | |||
| adc224334e | |||
| 34d922901f | |||
| bd18868bc7 | |||
| fe7d2f0cb0 | |||
| 3351c909af | |||
| 2f33ecf02a | |||
| f5e99fe4d3 | |||
| e0b41b3682 | |||
| 5165c5a638 | |||
| 7f2ab40b70 | |||
| 0d6a956db8 | |||
| f0db61efe2 | |||
| 81852d5dc6 | |||
| ec7c5c6688 | |||
| 2d96bdc225 | |||
| 96bbd50a3b | |||
| 4bf9ef8206 | |||
| 60eceb575e | |||
| b375acbb3a | |||
| 5fa61f7ff8 | |||
| 8351e46437 | |||
| 2f66e82f22 | |||
| 3ccec5bbd0 | |||
| f297060f42 | |||
| 9b57d3441c | |||
| d59a251b1f | |||
| 4382b3d649 | |||
| dfe2540c02 | |||
| 9a3cfd7ba1 | |||
| ba5a1b742b | |||
| a99e942d3a | |||
| 0953fb7475 | |||
| 82e7026264 | |||
| 70ccb094d5 | |||
| 64eaeddf98 | |||
| 18d34a3101 | |||
| cbc778c4dc | |||
| 5af7afaf75 | |||
| 77d6c038fe | |||
| 69368a9057 | |||
| abfc9772e8 | |||
| d716574973 | |||
| 2093f2e613 | |||
| 9028d4d12c | |||
| 811b355989 | |||
| cfe718da7d | |||
| 2bc13c5949 | |||
| c2862eaf43 | 
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -1,2 +1,3 @@ | ||||
| *.pdf | ||||
| *.xopp | ||||
| __pycache__ | ||||
|   | ||||
| @@ -6,6 +6,7 @@ from wiener_filter import wienerFilter | ||||
|  | ||||
| # Assume greyscale PIL image passed. | ||||
| # What about other color channels? See #11. | ||||
| # `THRESHOLD` seems to have been designed to assume 256 range based images. | ||||
| def contextAdaptiveInterpolator(I, IImage, showProgress = False): | ||||
|     rImage = Image.new('L', (IImage.size[0] - 2, IImage.size[1] - 2)) | ||||
|     r = rImage.load() | ||||
|   | ||||
| @@ -14,5 +14,13 @@ def rmsDiffPil(im1, im2): | ||||
|         map(lambda h, i: h*(i**2), h, range(256)) | ||||
|     ) / (float(im1.size[0]) * im1.size[1])) | ||||
|  | ||||
| def rmsDiffNumpy(image0, image1): | ||||
| def normalizeImage(image): | ||||
|     image = image - image.min() | ||||
|     image = image / image.max() | ||||
|     return image | ||||
|  | ||||
| def rmsDiffNumpy(image0, image1, normalize = False): | ||||
|     if normalize: | ||||
|         image0 = normalizeImage(image0) | ||||
|         image1 = normalizeImage(image1) | ||||
|     return np.sqrt(np.mean(np.square(image0 - image1))) | ||||
							
								
								
									
										41
									
								
								algorithms/image_utils/image_utils.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								algorithms/image_utils/image_utils.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,41 @@ | ||||
| from PIL import Image, ImageFont, ImageDraw | ||||
| import numpy as np | ||||
| from matplotlib import pyplot as plt | ||||
| import os | ||||
|  | ||||
| def randomGaussianImage(scale, size): | ||||
|     return np.random.normal(loc = 0, scale = scale, size = size) | ||||
|  | ||||
| # `cmap` source: https://matplotlib.org/3.8.0/api/_as_gen/matplotlib.pyplot.imshow.html | ||||
| def showImageWithMatplotlib(npArray, title = None, cmap = 'viridis'): | ||||
|     if title is not None: | ||||
|         plt.title(title) | ||||
|     plt.imshow(npArray, cmap = cmap) | ||||
|     plt.show() | ||||
|  | ||||
| def toPilImage(npArray): | ||||
|     return Image.fromarray(npArray) | ||||
|  | ||||
| def getPrnuShownAsSuch(size, gaussianNoise = 0): | ||||
|     # Supports `WIDTH` > `HEIGHT` and conversely. | ||||
|     WIDTH, HEIGHT = size | ||||
|     TEXT = 'PRNU' | ||||
|  | ||||
|     imagePil = Image.new('L', size) | ||||
|     draw = ImageDraw.Draw(imagePil) | ||||
|     fontPath = os.path.expanduser('~/.local/share/fonts/impact.ttf') | ||||
|     for fontSize in range(1, HEIGHT + 1): | ||||
|         font = ImageFont.truetype(fontPath, fontSize) | ||||
|         if font.getlength(TEXT) > WIDTH: | ||||
|             break | ||||
|     # Center vertically, especially in the case `HEIGHT` > `WIDTH`. | ||||
|     draw.text((0, HEIGHT // 2 - fontSize // 2), TEXT, 255, font = font) | ||||
|     imageNpArray = np.array(imagePil) | ||||
|     gaussianNoiseNpArray = randomGaussianImage(gaussianNoise, size[::-1]) | ||||
|     #prnuShownAsSuch = imageNpArray + gaussianNoiseNpArray | ||||
|     prnuShownAsSuch = imageNpArray | ||||
|     for y in range(HEIGHT): | ||||
|         for x in range(WIDTH): | ||||
|             if prnuShownAsSuch[y, x] != 0: | ||||
|                 prnuShownAsSuch[y, x] += gaussianNoiseNpArray[y, x] | ||||
|     return prnuShownAsSuch | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=Darktable&oldid=1204679832 | ||||
| @@ -0,0 +1,24 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Darktable - Wikipedia/Darktable - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">171.91839600 86.09838867 380.90474598 86.09838867</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">399.04504395 298.73919678 399.04504395 329.40808105 548.97998047 329.40808105 548.97998047 298.73919678 399.04504395 298.73919678</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">397.33496094 474.64733887 529.55115858 474.64733887</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=IrfanView&oldid=1214028358 | ||||
| @@ -0,0 +1,26 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/IrfanView - Wikipedia/IrfanView - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">374.13684082 45.68719482 543.92017829 45.68719482</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">488.56939697 62.39920044 522.71179588 62.39920044</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">490.82409668 78.59756470 503.62634277 78.59756470</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">487.12432861 94.79483032 545.10872641 94.79483032</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">490.08135986 110.23706055 504.16247559 111.84231567</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=Law_of_large_numbers&oldid=1214684685 | ||||
| @@ -0,0 +1,62 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Law of large numbers - Wikipedia/Law of large numbers - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">172.79332005 455.71986902 176.74788473 461.64321741</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">176.74788473 461.64321741 185.60032684 446.31033791</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">551.70618022 154.14224043 556.89385206 161.24116676</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">557.16641469 161.24116676 565.35602737 142.40508790</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">380.32310272 214.79667307 115.27752645 382.17214760</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">54.81231868 100.23162958 121.10611350 100.23162958</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">44.94156833 77.24209718 229.25613510 77.24209718</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">241.87676723 99.25463731 255.19612112 99.25463731</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">282.25762979 100.01803628 364.60489826 100.01803628</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">67.07284300 111.51919777 366.62676024 111.51919777</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">43.00099023 124.14875416 357.10161952 124.14875416</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">186.66547704 136.27102646 365.04606404 136.27102646</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">44.06579223 149.49702205 286.77048459 149.49702205</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="5"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="6"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="7"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="8"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="9"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="10"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="11"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://fr.wikipedia.org/w/index.php?title=Nikon_Electronic_File&oldid=209775164 | ||||
| @@ -0,0 +1,40 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Nikon Electronic File — Wikipédia/Nikon Electronic File — Wikipédia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">47.55526456 101.48866512 279.11246359 101.48866512</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">170.54788889 143.22212156 189.54746249 143.22212156</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">366.24957628 144.12380250 397.74670462 144.12380250</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">144.19416948 160.35736336 427.18339402 160.35736336</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">79.99953593 176.19094218 96.02432225 176.19094218</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">364.49368059 202.80873953 428.65741708 202.80873953</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">64.45138474 203.00818829 261.69250506 203.00818829</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">324.57815123 221.83457051 387.11603808 221.83457051</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">445.52723278 222.52151868 503.89473642 222.52151868</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">59.42289494 243.39299478 308.83852525 243.39299478</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">122.59544183 227.88698811 172.40849554 227.88698811</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">438.01269531 263.12515637 553.40216923 263.12515637</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">45.51733348 281.14424776 52.90766945 280.44569788</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">114.81746957 282.79118814 139.85872554 282.79118814</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">197.15545907 280.54685987 255.05553674 280.54685987</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">312.52431318 281.46268986 336.04181463 282.88813820</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">373.29969170 279.72129633 548.74888148 279.72129633</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.15594533 298.46753838 80.74842194 298.46753838</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">424.83349004 296.94630016 462.04104961 296.94630016</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">478.84012017 297.42603144 517.05685450 299.53999165</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">123.94429357 342.13242964 552.38637550 342.13242964</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.74238170 356.93778046 72.06804260 358.23283550</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="33.93796810" y="352.88527408" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">251.32416024 406.37608047 495.38647884 406.37608047</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">75.72919357 423.57785564 548.73344721 423.57785564</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.91423854 438.23148869 183.44415065 438.23148869</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">292.69706789 381.72130742 112.63571495 415.39962390</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=Pixel_binning&oldid=1171449668 | ||||
| @@ -0,0 +1,43 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Pixel binning - Wikipedia/Pixel binning - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">51.09253618 85.47308712 189.43789577 85.47308712</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">185.37727430 116.78082060 227.59026141 113.00331305</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">318.28045576 117.82296952 439.06144749 117.82296952</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="325.35282998" y="136.11833887" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">46.10718828 133.63524794 227.06402141 133.63524794</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">206.07004947 159.31200677 300.20272855 159.31200677</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">46.61881055 176.15069383 112.48246295 176.15069383</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">123.60199227 177.70812209 300.59033969 177.70812209</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="310.38527628" y="173.17853265" color="#00c0ffff" ts="0" fn="">how?</text> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">133.91466377 205.42622257 214.68155123 205.42622257</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">366.48676505 204.27801876 546.91569472 204.27801876</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.98499856 218.76547661 238.26228539 218.76547661</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">250.65671260 219.56883867 310.98287642 219.56883867</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">334.19779169 219.36784912 388.63857930 219.36784912</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">415.03521054 225.29837066 550.18388573 225.29837066</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">44.84802292 242.09915723 131.28956055 242.09915723</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="81.53244466" y="238.19677166" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">210.00142889 253.03343809 468.44806990 253.03343809</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.18076999 312.68886047 121.93878797 312.68886047</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">272.83801646 313.62967774 367.22995482 313.62967774</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">376.20437817 320.27099976 555.62383323 320.27099976</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">44.42413582 335.24359768 190.92308636 335.24359768</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="165.42572549" y="327.75054734" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">225.53760463 327.70213321 395.36129015 327.70213321</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">448.62513610 326.96838150 549.01235282 326.96838150</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">48.50444607 343.99932242 99.90004806 343.99932242</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">156.06577104 343.51310472 191.58998937 343.51310472</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">107.39688314 345.34324228 149.86101023 345.34324228</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">153.91174821 241.93356899 549.04126003 241.93356899</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">44.90642132 259.50770446 91.57263823 259.50770446</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">49.68398142 268.29369457 270.70008537 268.29369457</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">324.27185196 268.09401193 551.74887802 268.09401193</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">45.80610520 283.44210676 173.27140898 283.44210676</stroke> | ||||
|       <stroke tool="highlighter" color="#ff00007f" width="8.50000000" fill="128">196.87098296 284.42616681 526.83168150 284.42616681</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://web.archive.org/web/20240405093114/https://bammey.com/research/polar/ | ||||
| @@ -0,0 +1,68 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Positional Learning Quentin Bammey/Positional Learning Quentin Bammey.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">145.28812179 232.85203924 190.65558331 232.85203924</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">373.42255741 232.13011019 405.83713891 232.13011019</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">54.17760247 379.87537539 100.95766579 379.87537539</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">310.44709403 379.61179459 349.98117326 379.61179459</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">83.57968051 411.56928942 161.38534344 411.56928942</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">175.78703703 412.60446463 260.42027211 412.60446463</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">307.04718597 413.08319255 442.32202154 413.08319255</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="333.74119395" y="398.57997951" color="#00c0ffff" ts="0" fn="">not identical?</text> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">459.97445345 412.75459768 502.48270820 412.75459768</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">53.05489228 424.70114629 93.67506940 424.70114629</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">165.34484124 429.01701184 450.69514457 429.01701184</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">55.81353726 452.92426399 486.52827774 452.92426399</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">90.31110964 466.08151254 217.28838617 466.08151254</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">291.69268543 489.43960329 511.21937121 489.43960329</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">100.06806168 488.76981245 273.31862473 488.76981245</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">60.61756733 508.43623715 160.25728046 508.43623715</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">351.28044012 502.86479091 531.84965537 502.86479091</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">54.98792867 516.55238450 81.06346923 518.32963156</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">206.68748000 537.79333970 294.65267874 537.79333970</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">347.13651793 538.08649991 536.30000376 538.08649991</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">55.46731033 552.20719218 103.66499002 552.20719218</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">130.62454213 552.29462294 175.09228590 552.29462294</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">209.61008133 552.13018338 489.07510070 552.13018338</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="132.46727699" y="569.96343599" color="#ff00ffff" ts="0" fn="">to do</text> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">56.85522146 566.42054514 163.68781229 566.42054514</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">262.03579052 566.40682605 319.45270877 566.40682605</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">80.42311569 602.49289436 144.40783466 602.49289436</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">210.56829512 602.08147335 346.63466042 602.08147335</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">357.64962094 610.26331694 527.17602452 610.26331694</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">55.48288642 622.39263828 277.15180391 622.39263828</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">282.36977006 616.80216723 327.87157725 616.80216723</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">340.46957230 617.57170568 383.63243449 615.87548460</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">402.19098607 616.06262508 426.39043100 616.06262508</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">500.02721382 617.58144547 511.22539951 616.74996270</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">56.56901554 631.54465248 82.60996398 631.54465248</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">122.14351254 631.01343580 159.53641679 631.01343580</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">187.91647206 631.10603963 533.58299899 631.10603963</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">54.55645013 647.21838708 155.15229465 647.21838708</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">53.91351952 665.40815293 184.63373123 665.40815293</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">249.72908745 667.14973795 333.71201222 667.14973795</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">418.89711985 667.47556626 525.39096941 667.47556626</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">55.80878105 681.53800926 511.89742566 681.53800926</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">114.06130288 695.16360167 300.02448611 695.16360167</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">447.43221413 717.51248682 522.33392990 717.51248682</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">55.25313909 730.70731128 225.05883444 730.70731128</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">395.58645849 730.18602387 524.35143064 730.18602387</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">54.73862596 746.10924120 91.08992497 746.10924120</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">83.75024059 768.01744806 141.26491429 768.01744806</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">157.45151535 767.49981782 330.31724684 767.49981782</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">422.74119283 766.49832448 511.79091112 766.49832448</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">55.36305285 781.72687091 172.95126561 781.72687091</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">261.07837259 785.58204801 333.00309050 785.58204801</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">340.53699289 781.33580114 512.11123602 781.33580114</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">55.22613674 53.44725059 377.36542545 53.44725059</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=Raster_graphics&oldid=1215085649 | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=Self-supervised_learning&oldid=1216667706 | ||||
| @@ -0,0 +1,47 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Self-supervised learning - Wikipedia/Self-supervised learning - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">48.26525879 753.08764648 323.21387725 753.08764648</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">78.75981607 773.14675759 173.15055145 773.14675759</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">213.43907013 774.81671798 274.57365701 774.81671798</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">326.77796190 773.51254435 548.34453261 773.51254435</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">43.95785428 790.12898732 86.17248208 790.12898732</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">97.53255178 787.80589114 181.26390539 787.80589114</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">389.80783510 43.00614607 478.83082304 43.00614607</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">97.04702192 75.62553927 545.53615951 75.62553927</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.02760412 93.68637394 234.44317499 93.68637394</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="43.10288060" y="101.97065929" color="#00c0ffff" ts="0" fn="">pair because one positive and one negative provided at the same time?</text> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.03979492 130.97671509 164.08238870 130.97671509</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">261.23059082 155.56072998 292.90285683 155.56072998</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">334.87695312 156.61801147 450.15064045 156.61801147</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">463.05383301 152.89419556 550.75115417 152.89419556</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">85.58880615 171.21356201 527.89845616 171.21356201</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">64.67681885 191.92605591 547.84639168 191.92605591</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">42.98168945 202.92239380 262.76863699 202.92239380</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">270.80383301 202.43750000 550.21725213 202.43750000</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">46.19338989 219.61102295 91.98720846 219.61102295</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="317.23645020" y="208.96667480" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <text font="Sans" size="11.00000000" x="52.90310669" y="223.52456665" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="5"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=Shot_noise&oldid=1210973018 | ||||
							
								
								
									
										111
									
								
								articles/Shot noise - Wikipedia/Shot noise - Wikipedia.xopp.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										111
									
								
								articles/Shot noise - Wikipedia/Shot noise - Wikipedia.xopp.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,111 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/Shot noise - Wikipedia/Shot noise - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">46.11154175 86.32046509 150.35152358 86.32046509</stroke> | ||||
|       <stroke tool="highlighter" color="#ff00007f" width="8.50000000" fill="128">127.45324707 116.81433105 200.04861869 116.81433105</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">78.01306400 132.47647418 254.63864121 132.47647418</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">169.41341684 160.67209108 303.27056261 160.67209108</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">47.40466685 177.72969763 162.33560428 177.72969763</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">235.26941037 177.45813474 302.79955883 177.45813474</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">47.64915140 193.41002363 303.37602767 193.41002363</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">260.11489192 207.76653791 44.85486037 207.76653791</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="327.01944284" y="309.08399263" color="#00c0ffff" ts="0" fn="">so pixel or black?</text> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">328.65629476 277.60449072 502.30991623 277.60449072</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">519.69371999 291.55182641 330.19208155 291.55182641</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">326.95781155 305.28418629 524.57140525 305.28418629</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">67.09423681 269.80212503 168.61949049 269.80212503</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">215.60499276 270.06481466 307.72054223 270.06481466</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">67.99859807 285.73181932 106.17849107 285.73181932</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">211.27064832 284.39049036 281.11851124 284.39049036</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">189.00535807 306.61017621 301.13379781 306.61017621</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">47.56651777 322.75420432 199.59521732 322.75420432</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">289.46654265 364.52157976 392.58953849 364.52157976</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">424.26032361 365.22355284 547.10319361 365.22355284</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">47.01925345 381.43359155 548.32815761 381.43359155</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.66284913 397.20432388 202.52479214 397.20432388</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">44.36838564 424.34332408 169.17738859 424.34332408</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">282.64330743 426.96873001 546.79134851 426.96873001</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">48.50904320 441.01837181 80.50800279 441.01837181</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">207.55202066 439.18481794 246.98777059 441.61400340</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">301.21051378 449.25105599 323.03490551 449.25105599</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">434.06341346 448.50774316 476.11050162 448.50774316</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">425.87754889 512.42902313 552.42238033 512.42902313</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">44.67524665 529.10365815 550.78712902 529.10365815</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">44.76212201 544.86315560 511.52154545 544.86315560</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">526.29441305 538.25024176 552.02883643 538.25024176</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">44.88893849 555.01991461 174.03463657 555.01991461</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">290.63859190 588.55877883 314.74527387 588.55877883</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.50521225 625.64681904 444.64200883 625.64681904</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">303.56511346 640.27596237 549.47878566 640.27596237</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">537.92131225 656.01232516 46.38337531 656.01232516</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">53.45846243 679.71771951 492.32045636 679.71771951</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="362.81672248" y="683.55551806" color="#00c0ffff" ts="0" fn="">uniquement</text> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">47.10556707 716.64930841 200.39634201 716.64930841</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">211.03226270 723.63411941 410.12069510 723.63411941</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#ff00ffff" width="1.41000000" fill="255">420.20141693 724.59194949 448.96595043 724.59194949</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">453.45856103 723.28033562 552.49284040 723.28033562</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">45.32520687 741.83387670 552.40812386 741.83387670</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">45.14761566 757.00280973 152.41913671 757.00280973</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">166.53777136 749.27954670 551.05563429 749.27954670</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.46027753 765.43685030 175.30696655 765.43685030</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">185.83120895 771.31310054 420.29842273 771.31310054</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">450.78131420 764.48388103 552.05132785 764.48388103</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.86073859 782.32056856 549.40004325 782.32056856</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.17630567 799.83536558 326.61443210 799.83536558</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">430.34159877 799.99744579 549.45598233 799.99744579</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="173.37040718" y="82.43216394" color="#00c0ffff" ts="0" fn="">example of generating Poisson noise?</text> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.94473645 83.82312021 159.02826360 83.82312021</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">47.74493440 106.39993738 358.84150350 106.39993738</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.24946990 123.26490028 95.03541660 123.26490028</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">46.03968734 155.13559251 358.58354595 155.13559251</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.89209782 171.99810209 136.50406601 171.99810209</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">74.95227243 225.57011697 74.95227243 250.76211403 174.99590959 250.76211403 174.99590959 225.57011697 74.95227243 225.57011697</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">197.37577259 169.44888693 360.89557240 169.44888693</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">90.40439299 187.31985228 339.71317253 187.31985228</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.29636306 203.96312138 139.23525650 203.96312138</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="234.92328463" y="307.76575248" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">43.17994265 282.56787329 364.59659633 282.56787329</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">271.53114875 307.49055445 544.33799740 307.49055445</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">44.52646486 323.36324897 352.40420412 323.36324897</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">538.36492915 324.74195106 549.51146455 324.74195106</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">45.77901541 340.83512419 195.69395184 340.83512419</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">412.31054798 212.41133165 497.78366914 212.41133165</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">387.33932759 225.38077500 427.05427198 225.38077500</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">446.25494518 239.20996112 525.06844193 239.20996112</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">390.43487847 254.31210398 439.48051735 254.31210398</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">385.76075943 268.18013066 502.37680488 268.18013066</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">521.55384777 87.17784122 521.55384777 106.33948689 539.06360056 106.33948689 539.06360056 87.17784122 521.55384777 87.17784122</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">44.55310756 45.16262224 371.62378483 45.16262224</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">388.15745548 46.29871990 395.75530066 52.90615388</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">395.75530066 52.90615388 407.90469014 27.90090789</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="5"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="6"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="7"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
							
								
								
									
										1
									
								
								articles/TIFF - Wikipedia/TIFF - Wikipedia.pdf.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								articles/TIFF - Wikipedia/TIFF - Wikipedia.pdf.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=TIFF&oldid=1216190460 | ||||
							
								
								
									
										84
									
								
								articles/TIFF - Wikipedia/TIFF - Wikipedia.xopp.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								articles/TIFF - Wikipedia/TIFF - Wikipedia.xopp.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,84 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/TIFF - Wikipedia/TIFF - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">45.57971191 109.10958862 168.65773219 109.10958862</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">237.75408936 123.76974487 289.62227446 123.76974487</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">131.04868487 140.96712475 191.27236261 140.96712475</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">238.78297412 139.16615888 302.21080438 139.16615888</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">193.36134225 155.49520697 252.82597818 157.89497312</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">297.75430979 155.70671145 374.09444242 155.70671145</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">45.60884838 168.93547626 371.86404885 168.93547626</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">50.10696285 185.16873446 356.93423163 185.16873446</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">185.32719888 214.67920729 243.15367004 214.67920729</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">272.44802428 213.47681471 373.51177378 213.47681471</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">198.47687020 200.96170725 281.73395491 200.96170725</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">46.17580698 229.88003817 76.89951361 229.88003817</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">123.43414559 230.69223451 144.75588991 230.69223451</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">198.39575902 229.51597103 374.37007801 229.51597103</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">45.67275875 244.74583145 80.51014446 244.74583145</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="5"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="6"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="7"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="8"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="9"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="10"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="11"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="12"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="13"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="14"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="15"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="16"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -21,6 +21,12 @@ | ||||
|       <stroke tool="highlighter" color="#ff00007f" width="8.50000000" fill="128">78.66667086 411.37732832 172.83413256 411.37732832</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">182.94980638 411.63570950 294.96144099 411.63570950</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">78.08589681 419.59506323 154.70364562 419.59506323</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">201.73046875 190.98156738 295.14835752 190.98156738</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">77.83660889 203.19790649 95.32058716 202.45193481</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">103.98278809 201.52066040 298.68438360 201.52066040</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">78.63943481 212.82376099 103.41469363 212.82376099</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">154.10906982 212.40234375 294.61920570 212.40234375</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">79.34304810 223.27105713 254.63002133 223.27105713</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="612.00000000" height="792.00000000"> | ||||
|   | ||||
							
								
								
									
										1
									
								
								articles/XnView - Wikipedia/XnView - Wikipedia.pdf.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								articles/XnView - Wikipedia/XnView - Wikipedia.pdf.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| https://en.wikipedia.org/w/index.php?title=XnView&oldid=1214657498 | ||||
							
								
								
									
										33
									
								
								articles/XnView - Wikipedia/XnView - Wikipedia.xopp.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								articles/XnView - Wikipedia/XnView - Wikipedia.xopp.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/XnView - Wikipedia/XnView - Wikipedia.pdf" pageno="1"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">370.34222412 602.18234253 543.74695181 602.18234253</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">487.12084961 619.35330200 515.29533244 619.35330200</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">484.81011963 635.81884766 538.79037907 635.81884766</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">483.86151123 654.73928833 547.09358727 654.73928833</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">483.16241455 666.38528442 500.30053711 665.64916992</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">482.34295654 684.58883667 531.63021756 684.58883667</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">484.23950195 700.91912842 538.54941348 700.91912842</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">485.53717041 715.33084106 524.40445437 715.33084106</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="4"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="5"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -1,3 +1,5 @@ | ||||
| # Notes: https://gitea.lemnoslife.com/Benjamin_Loison/Robust_image_source_identification_on_modern_smartphones/issues/21 | ||||
|  | ||||
| import numpy as np | ||||
| from matplotlib import pyplot as plt | ||||
| from PIL import Image | ||||
| @@ -10,6 +12,10 @@ from rms_diff import rmsDiffPil, rmsDiffNumpy | ||||
| sys.path.insert(0, '../../algorithms/context_adaptive_interpolator/') | ||||
|  | ||||
| from context_adaptive_interpolator import contextAdaptiveInterpolator | ||||
|  | ||||
| sys.path.insert(0, '../../algorithms/image_utils/') | ||||
|  | ||||
| from image_utils import showImageWithMatplotlib, randomGaussianImage, toPilImage | ||||
| from tqdm import tqdm | ||||
|  | ||||
| IMAGE_SIZE = 64 | ||||
| @@ -18,30 +24,38 @@ NUMBER_OF_IMAGES_PER_PHONE = 10_000 | ||||
| # Compared to images being 1. | ||||
| PRNU_FACTOR = 0.1 | ||||
|  | ||||
| IMAGE_SIZE_SHAPE = (IMAGE_SIZE, IMAGE_SIZE) | ||||
|  | ||||
| np.random.seed(0) | ||||
|  | ||||
| # Generate PRNUs and images of phones. | ||||
| # Is such `np.maximum` probabilistically correct with our theoretical method? See #19. | ||||
| def randomImage(scale): | ||||
|     return np.random.normal(loc = 0, scale = scale, size = (IMAGE_SIZE, IMAGE_SIZE)) | ||||
| imagesWithoutPrnu = [[randomGaussianImage(scale = 1, size = IMAGE_SIZE_SHAPE) for _ in range(NUMBER_OF_IMAGES_PER_PHONE)] for phoneIndex in range(NUMBER_OF_PHONES)] | ||||
|  | ||||
| imagesWithoutPrnu = [[randomImage(scale = 1) for _ in range(NUMBER_OF_IMAGES_PER_PHONE)] for phoneIndex in range(NUMBER_OF_PHONES)] | ||||
|  | ||||
| prnus = [randomImage(scale = PRNU_FACTOR) for _ in range(NUMBER_OF_PHONES)] | ||||
| prnus = [randomGaussianImage(scale = PRNU_FACTOR, size = IMAGE_SIZE_SHAPE) for _ in range(NUMBER_OF_PHONES)] | ||||
|  | ||||
| imagesWithPrnu = [[imageWithoutPrnu + prnus[phoneIndex] for imageWithoutPrnu in imagesWithoutPrnu[phoneIndex]] for phoneIndex in range(NUMBER_OF_PHONES)] | ||||
|  | ||||
| allImages = np.max([np.max(imagesWithoutPrnu) + np.max(prnus) + np.max(imagesWithPrnu)]) | ||||
|  | ||||
| def toPilImage(npArray): | ||||
|     return Image.fromarray(npArray) | ||||
|  | ||||
| def showImageWithPil(npArray): | ||||
|     npArray -= npArray.min() | ||||
|     npArray = (npArray / npArray.max()) * 255 | ||||
|     Image.fromarray(npArray).show() | ||||
|  | ||||
| def showImageWithMatplotlib(npArray): | ||||
|     plt.imshow(npArray) | ||||
|     plt.show() | ||||
| plt.title('RMS between actual PRNU and the mean of the first $N$ images with PRNU (i.e. estimated PRNU)') | ||||
| plt.xlabel('$N$ first images with PRNU') | ||||
| plt.ylabel('RMS') | ||||
| plt.xscale('log') | ||||
| rmss = [] | ||||
| mean = np.zeros(IMAGE_SIZE_SHAPE) | ||||
| for imageIndex in range(NUMBER_OF_IMAGES_PER_PHONE): | ||||
|     mean = (mean * imageIndex + imagesWithPrnu[0][imageIndex]) / (imageIndex + 1) | ||||
|     rms = rmsDiffNumpy(mean, prnus[0]) | ||||
|     rmss += [rms] | ||||
| plt.plot(rmss) | ||||
| plt.show() | ||||
|  | ||||
| ## | ||||
|  | ||||
| NUMBER_OF_ROWS = 5 | ||||
| NUMBER_OF_COLUMNS = 3 | ||||
|   | ||||
							
								
								
									
										100
									
								
								datasets/noise_free_test_images/estimate_prnu.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								datasets/noise_free_test_images/estimate_prnu.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,100 @@ | ||||
| # Notes: https://gitea.lemnoslife.com/Benjamin_Loison/Robust_image_source_identification_on_modern_smartphones/issues/25 | ||||
|  | ||||
| import os | ||||
| from PIL import Image | ||||
| import numpy as np | ||||
| import matplotlib.pyplot as plt | ||||
| import sys | ||||
|  | ||||
| sys.path.insert(0, '../../algorithms/image_utils/') | ||||
|  | ||||
| from image_utils import showImageWithMatplotlib, randomGaussianImage, toPilImage, getPrnuShownAsSuch | ||||
|  | ||||
| sys.path.insert(0, '../../algorithms/context_adaptive_interpolator/') | ||||
|  | ||||
| from context_adaptive_interpolator import contextAdaptiveInterpolator | ||||
|  | ||||
| sys.path.insert(0, '../../algorithms/distance/') | ||||
|  | ||||
| from rms_diff import rmsDiffNumpy | ||||
|  | ||||
| from skimage.restoration import denoise_tv_chambolle | ||||
|  | ||||
| datasetPath = 'no_noise_images' | ||||
| # Note that contrarily to `datasets/fake/`, here we do not have images being Gaussian with `scale` `1` but actual images with pixel values between 0 and 255. | ||||
| # In addition to the range difference, note that the distribution in the first set of images was a Gaussian and here is very different and specific. | ||||
| PRNU_FACTOR = 0.01 | ||||
| NOISE_FACTOR = 0.1 | ||||
|  | ||||
| np.random.seed(0) | ||||
|  | ||||
| SPLIT_N_X_N_S = [1, 2, 4] | ||||
|  | ||||
| # len(SPLIT_N_X_N_S) | ||||
| fig, axes = plt.subplots(2, 4) | ||||
| fig.suptitle('PRNU estimation with different number of images having Gaussian noise and Gaussian noised PRNU') | ||||
|  | ||||
| for splitNXNIndex, splitNXN in enumerate(SPLIT_N_X_N_S): | ||||
|     IMAGE_SIZE_SHAPE = [dimension // splitNXN for dimension in (704, 469)] | ||||
|  | ||||
|     #prnuNpArray = 255 * randomGaussianImage(scale = PRNU_FACTOR, size = IMAGE_SIZE_SHAPE) | ||||
|     prnuNpArray = getPrnuShownAsSuch(IMAGE_SIZE_SHAPE, 255) * PRNU_FACTOR | ||||
|  | ||||
|     def isIn256Range(x): | ||||
|         return 0 <= x and x <= 255 | ||||
|  | ||||
|     imagesPrnuEstimateNpArray = [] | ||||
|     isFirstImage = True | ||||
|  | ||||
|     for imageName in os.listdir(datasetPath): | ||||
|         if imageName.endswith('.png'): | ||||
|             imagePath = f'{datasetPath}/{imageName}' | ||||
|             imageWithoutPrnuPil = Image.open(imagePath).convert('F') | ||||
|             imageWithoutPrnuNpArray = np.array(imageWithoutPrnuPil) | ||||
|  | ||||
|             m = IMAGE_SIZE_SHAPE[1] | ||||
|             n = IMAGE_SIZE_SHAPE[0] | ||||
|  | ||||
|             imageWithoutPrnuNpArrayTiles = [imageWithoutPrnuNpArray[x : x + m, y : y + n] for x in range(0, imageWithoutPrnuNpArray.shape[0], m) for y in range(0, imageWithoutPrnuNpArray.shape[1], n)] | ||||
|             for imageWithoutPrnuNpArrayTile in imageWithoutPrnuNpArrayTiles: | ||||
|                 #print(imageWithoutPrnuNpArrayTile.shape, tuple(IMAGE_SIZE_SHAPE[::-1])) | ||||
|                 #if imageWithoutPrnuNpArrayTile.shape != tuple(IMAGE_SIZE_SHAPE[::-1]): | ||||
|                 #    continue | ||||
|                 imageNoise = randomGaussianImage(scale = 255 * NOISE_FACTOR, size = imageWithoutPrnuNpArrayTile.shape) | ||||
|                 imageWithPrnuNpArray = imageWithoutPrnuNpArrayTile + prnuNpArray + imageNoise | ||||
|  | ||||
|                 if splitNXNIndex == 0 and isFirstImage: | ||||
|                     axis = axes[0] | ||||
|  | ||||
|                     axis[0].set_title('First image without noise') | ||||
|                     axis[0].imshow(imageWithoutPrnuNpArrayTile) | ||||
|  | ||||
|                     axis[1].set_title('Actual Gaussian noised PRNU') | ||||
|                     axis[1].imshow(prnuNpArray) | ||||
|  | ||||
|                     axis[2].set_title('F. i. with G. n.') | ||||
|                     axis[2].imshow(imageWithoutPrnuNpArray + imageNoise) | ||||
|  | ||||
|                     axis[3].set_title('F. i. with G. n. and PRNU') | ||||
|                     axis[3].imshow(imageWithoutPrnuNpArray + prnuNpArray + imageNoise) | ||||
|                 isFirstImage = False | ||||
|  | ||||
|                 #assert all([isIn256Range(extreme) for extreme in [imageWithPrnuNpArray.max(), imageWithPrnuNpArray.min()]]), 'Adding the PRNU resulted in out of 256 bounds image' | ||||
|                 imageWithPrnuPil = toPilImage(imageWithPrnuNpArray) | ||||
|                 #imagePrnuEstimatePil = contextAdaptiveInterpolator(imageWithPrnuPil.load(), imageWithPrnuPil) | ||||
|                 #imagePrnuEstimateNpArray = np.array(imagePrnuEstimatePil) | ||||
|                 imagePrnuEstimateNpArray = imageWithPrnuNpArray - denoise_tv_chambolle(imageWithPrnuNpArray, weight=0.2, channel_axis=-1) | ||||
|  | ||||
|                 imagesPrnuEstimateNpArray += [imagePrnuEstimateNpArray] | ||||
|  | ||||
|     cameraPrnuEstimateNpArray = np.array(imagesPrnuEstimateNpArray).mean(axis = 0) | ||||
|     rms = rmsDiffNumpy(cameraPrnuEstimateNpArray, prnuNpArray, True) | ||||
|     title = f'RMS with actual PRNU: {rmsDiffNumpy(cameraPrnuEstimateNpArray, prnuNpArray):.4f}\n(normalized RMS: {rmsDiffNumpy(cameraPrnuEstimateNpArray, prnuNpArray, True):.4f})' | ||||
|     axis = axes[1] | ||||
|     axis[splitNXNIndex].set_title(f'Number of images: {len(imagesPrnuEstimateNpArray)}\n{title}') | ||||
|     axis[splitNXNIndex].imshow(cameraPrnuEstimateNpArray) | ||||
|  | ||||
| axes[1][3].axis('off') | ||||
|  | ||||
| plt.tight_layout() | ||||
| plt.show() | ||||
							
								
								
									
										1
									
								
								datasets/noise_free_test_images/no_noise_images.zip.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								datasets/noise_free_test_images/no_noise_images.zip.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| https://web.archive.org/web/20220121204219/https://mcolom.perso.math.cnrs.fr/download/no_noise_images/no_noise_images.zip | ||||
| @@ -0,0 +1 @@ | ||||
| https://web.archive.org/web/20221230200626/https://mcolom.perso.math.cnrs.fr/pages/no_noise_images/ | ||||
| @@ -0,0 +1,39 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/datasets/noise_free_test_images/webpage/noise_free_test_images.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">44.16991935 149.86110719 276.63410082 149.86110719</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">280.30546835 143.78018970 541.08492691 143.78018970</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">42.96677014 154.05265871 198.56628848 154.05265871</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">233.93128450 170.94835013 492.23933025 170.94835013</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">42.99659414 184.92242482 112.65886477 184.92242482</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">149.16792941 183.91166246 216.17115865 183.91166246</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">294.03605816 184.15454202 354.65329212 184.15454202</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">378.27254366 184.83142695 394.34985957 184.14821152</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">85.58659829 199.62412937 411.27805159 199.62412937</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">418.29380004 200.39743471 541.57682036 200.39743471</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">44.73424234 213.56413029 69.64328426 213.56413029</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">112.38907743 213.70955538 483.94315603 213.70955538</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">44.49702491 230.38688218 98.83166378 230.38688218</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#00c0ffff" width="1.41000000" fill="255">155.44600053 263.30094771 311.89079733 263.30094771</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">370.62786512 257.40568303 547.67625847 257.40568303</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">44.88887314 272.09091817 331.36022445 272.09091817</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">350.89020532 268.80336793 450.39163443 268.80336793</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">44.93306058 287.15898498 351.10131254 287.15898498</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">45.27054464 307.01382219 263.17418553 307.01382219</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">93.80213209 345.70257013 454.50227983 345.70257013</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="45.82731792" y="353.90876455" color="#00c0ffff" ts="0" fn="">legends not matching actual webpage web-browser rendering</text> | ||||
|       <text font="Sans" size="11.00000000" x="48.63067627" y="32.63059998" color="#00c0ffff" ts="0" fn="">Almost identical content as `no_noise_images.zip/readme.txt`.</text> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="3"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
							
								
								
									
										35
									
								
								datasets/raise/extract_noise.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										35
									
								
								datasets/raise/extract_noise.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| #!/usr/bin/python3 | ||||
|  | ||||
| from skimage.restoration import denoise_tv_chambolle | ||||
| from skimage import img_as_float | ||||
| import numpy as np | ||||
| from PIL import Image | ||||
| import os | ||||
| from tqdm import tqdm | ||||
|  | ||||
| imagesFolderPath = 'flat-field' | ||||
| npArrayFilePath = 'mean.npy' | ||||
|  | ||||
| mean = None | ||||
| numberOfImagesInMean = 0 | ||||
|  | ||||
| imagesFileNames = os.listdir(imagesFolderPath) | ||||
|  | ||||
| def treatImage(imageFileName): | ||||
|     global mean, numberOfImagesInMean | ||||
|     imageFilePath = f'{imagesFolderPath}/{imageFileName}' | ||||
|     imagePil = Image.open(imageFilePath) | ||||
|     imageNpArray = img_as_float(np.array(imagePil)) | ||||
|     imageDenoisedNpArray = denoise_tv_chambolle(imageNpArray, weight=0.2, channel_axis=-1) | ||||
|     imageNoiseNpArray = imageNpArray - imageDenoisedNpArray | ||||
|     if mean is None: | ||||
|         mean = imageNoiseNpArray | ||||
|     else: | ||||
|         mean = ((mean * numberOfImagesInMean) + imageNoiseNpArray) / (numberOfImagesInMean + 1) | ||||
|     numberOfImagesInMean += 1 | ||||
|  | ||||
| for imageFileName in tqdm(imagesFileNames): | ||||
|     treatImage(imageFileName) | ||||
|  | ||||
| with open(npArrayFilePath, 'wb') as f: | ||||
|     np.save(f, mean) | ||||
							
								
								
									
										7
									
								
								datasets/raise/show_mean_noise.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								datasets/raise/show_mean_noise.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| import numpy as np | ||||
| import matplotlib.pyplot as plt | ||||
|  | ||||
| npArray = np.load('mean.npy') | ||||
| npArrayMin = npArray.min() | ||||
| print(f'{npArrayMin=}') | ||||
| plt.imsave('np_array.png', npArray - npArrayMin) | ||||
							
								
								
									
										53
									
								
								datasets/raise/split_and_compare_prnus_of_subgroups.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								datasets/raise/split_and_compare_prnus_of_subgroups.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,53 @@ | ||||
| from PIL import Image | ||||
| import numpy as np | ||||
| import matplotlib.pyplot as plt | ||||
| from tqdm import tqdm | ||||
| from skimage.restoration import denoise_tv_chambolle | ||||
| from skimage import img_as_float | ||||
| import sys | ||||
|  | ||||
| sys.path.insert(0, '../../algorithms/image_utils/') | ||||
|  | ||||
| from image_utils import showImageWithMatplotlib, toPilImage | ||||
|  | ||||
| sys.path.insert(0, '../../algorithms/distance/') | ||||
|  | ||||
| from rms_diff import rmsDiffNumpy | ||||
|  | ||||
| NUMBER_OF_SUBGROUPS = 1 | ||||
|  | ||||
| IMAGES_FOLDER = 'flat-field/TIF' | ||||
| imagesFileNames = os.listdir(IMAGES_FOLDER) | ||||
| numberOfImagesPerSubgroup = len(imagesFileNames) // NUMBER_OF_SUBGROUPS | ||||
|  | ||||
| # 1 | ||||
| numberOfImagesThresholds = range(numberOfImagesPerSubgroup, numberOfImagesPerSubgroup + 1) | ||||
|  | ||||
| # Assume random image order to not introduce a bias. | ||||
| subgroupsPrnuEstimatesNpArray = [] | ||||
| for subgroupIndex in range(NUMBER_OF_SUBGROUPS): | ||||
|     imagesPrnuEstimateNpArray = [] | ||||
|     for imageFileName in tqdm(imagesFileNames[numberOfImagesPerSubgroup * subgroupIndex : numberOfImagesPerSubgroup * (subgroupIndex + 1)]): | ||||
|         imagePath = f'{IMAGES_FOLDER}/{imageFileName}' | ||||
|         imagePil = Image.open(imagePath) | ||||
|         imageNpArray = img_as_float(np.array(imagePil)) | ||||
|         imagePrnuEstimateNpArray = imageNpArray - denoise_tv_chambolle(imageNpArray, weight=0.2, channel_axis=-1) | ||||
|         imagesPrnuEstimateNpArray += [imagePrnuEstimateNpArray] | ||||
|  | ||||
|     subgroupPrnuEstimateNpArray = [] | ||||
|     # Not efficient mean computation. | ||||
|     for numberOfImagesIndex, numberOfImages in enumerate(numberOfImagesThresholds): | ||||
|         subgroupPrnuEstimateNpArray += [np.array(imagesPrnuEstimateNpArray[:numberOfImages]).mean(axis = 0)] | ||||
|         plt.imsave('prnu.png', subgroupPrnuEstimateNpArray[-1]) | ||||
|     subgroupsPrnuEstimatesNpArray += [subgroupPrnuEstimateNpArray] | ||||
|  | ||||
| rmss = [] | ||||
| for numberOfImagesIndex, numberOfImages in enumerate(numberOfImagesThresholds): | ||||
|     rms = rmsDiffNumpy(subgroupsPrnuEstimatesNpArray[0][numberOfImagesIndex], subgroupsPrnuEstimatesNpArray[1][numberOfImagesIndex]) | ||||
|     rmss += [rms] | ||||
|  | ||||
| plt.title('RMS between both subgroups estimated PRNUs for a given number of images among them') | ||||
| plt.xlabel('Number of images of each subgroup') | ||||
| plt.ylabel('RMS between both subgroups estimated PRNUs') | ||||
| plt.plot(rmss) | ||||
| plt.show() | ||||
| @@ -0,0 +1 @@ | ||||
| https://web.archive.org/web/20221206120232/http://loki.disi.unitn.it/RAISE/download.html | ||||
| @@ -0,0 +1,36 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/RAISE - Dataset Download/RAISE - Dataset Download.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">209.23466041 170.16524753 272.87140272 170.16524753</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">67.84724831 187.73136956 147.44272099 187.73136956</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">145.44602071 206.09488082 187.82813867 206.09488082</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">351.20014102 206.60629674 404.67127478 206.60629674</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">448.14781458 207.01377863 525.76805524 207.01377863</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">69.58344859 216.76610521 350.46387824 216.76610521</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">99.48150383 226.82860594 523.19781282 226.82860594</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">68.25197880 237.31064886 175.18747560 232.79241939</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">66.95125588 253.24242962 249.40513345 253.24242962</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">69.44076572 272.00324261 241.00171775 272.00324261</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">426.12893486 306.37850858 526.44554244 306.37850858</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">69.33653364 317.92071061 245.56329151 317.92071061</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">216.85486069 303.92444591 416.12266138 303.92444591</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">141.34852569 362.89330303 190.57227117 362.89330303</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">451.03774440 363.78929545 526.54328468 363.78929545</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">70.35615550 374.66421493 194.74113662 374.66421493</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">106.18386100 288.58820502 166.94213826 288.58820502</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">94.90499059 307.01550284 339.74614562 307.01550284</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">68.47076072 383.46503965 143.10997398 383.46503965</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">426.23082827 407.85830617 528.76097087 407.85830617</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">68.82039449 418.89427409 252.92721945 418.89427409</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">216.77977048 407.28395206 413.91231590 407.28395206</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://web.archive.org/web/20200525105705/http://loki.disi.unitn.it/RAISE/guide.html | ||||
							
								
								
									
										38
									
								
								datasets/raise/website/RAISE - Guide/RAISE - Guide.xopp.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								datasets/raise/website/RAISE - Guide/RAISE - Guide.xopp.xml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/RAISE - Guide/RAISE - Guide.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">233.11192536 169.38906698 251.39169540 169.38906698</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">281.41944020 169.52714125 384.28060942 169.52714125</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">326.23717482 198.58771710 526.73230387 198.58771710</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">66.04515208 664.95700209 177.93599752 664.95700209</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">128.26187283 749.29629583 160.74042147 749.29629583</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">212.74810264 751.71650486 224.49545597 751.71650486</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">125.84970017 610.99777394 141.78945999 611.65852192</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">218.29418523 611.58941600 273.56659714 611.58941600</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">164.83793538 254.38742347 208.20419346 256.21801960</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">90.45738031 151.10142548 105.46200908 153.50990668</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">147.18827406 153.20366473 187.94765844 153.20366473</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">350.91115262 327.36637107 371.31555577 327.36637107</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">258.04985385 327.48486457 306.06727716 327.48486457</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">173.36609666 327.19883392 211.06797238 327.19883392</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">120.00795704 325.86977161 148.26991700 327.46700341</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">79.93681784 325.99161264 90.79279853 325.53783850</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">207.76392409 282.01307702 217.25585007 282.01307702</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">213.04855519 507.91629645 295.16340740 507.91629645</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">262.78464119 525.23918352 320.66361934 525.23918352</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">191.28869656 524.26722961 213.48545410 525.56747104</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">95.99628635 523.98317081 103.67804890 523.98317081</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">186.99154184 704.30285012 495.30272337 542.47143500</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">233.24578082 353.02428282 325.36284211 353.02428282</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">232.62648722 374.64463415 309.64141870 374.64463415</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">233.42372742 385.56543317 277.90078546 385.56543317</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" pageno="2"/> | ||||
|     <layer/> | ||||
|   </page> | ||||
| </xournal> | ||||
| @@ -0,0 +1 @@ | ||||
| https://web.archive.org/web/20200716082639/http://loki.disi.unitn.it/RAISE/index.php | ||||
| @@ -0,0 +1,44 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <xournal creator="Xournal++ 1.1.3" fileversion="4"> | ||||
|   <title>Xournal++ document - see https://github.com/xournalpp/xournalpp</title> | ||||
|   <page width="596.00000000" height="842.00000000"> | ||||
|     <background type="pdf" domain="absolute" filename="/home/benjamin/Desktop/bens_folder/school/ens/asp/aria/internship/work/articles/RAISE - The Raw Images Dataset/RAISE - The Raw Images Dataset.pdf" pageno="1"/> | ||||
|     <layer> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">123.15265371 158.74004553 150.56837685 158.74004553</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#ff00ffff" width="1.41000000" fill="255">50.99711168 174.70922653 59.33435520 174.10855697</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="115.10869452" y="164.53185286" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">222.34901901 187.17025133 284.45976847 187.17025133</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">60.57685064 200.81374108 97.25854724 200.81374108</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">89.68845448 209.98641919 277.68854996 209.98641919</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">59.34586104 221.64418197 280.94722085 221.64418197</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">58.88079157 231.72475855 100.04285985 231.72475855</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">332.76249628 425.19102949 466.95335299 425.19102949</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">308.67264006 159.78746275 386.98086553 159.78746275</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">163.05714371 466.15015914 278.62505702 466.15015914</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">95.26551531 476.61705687 204.00238357 476.61705687</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">59.42893447 486.01703788 92.08998198 486.01703788</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">142.10736098 486.95443050 184.36054545 486.95443050</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">103.94212905 494.92060019 137.13534029 494.92060019</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">121.32293303 505.47583443 278.98136804 505.47583443</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">58.85790495 514.68578146 226.80251643 514.68578146</stroke> | ||||
|       <text font="Sans" size="11.00000000" x="5.37004947" y="516.38161329" color="#00c0ffff" ts="0" fn="">to download?</text> | ||||
|       <text font="Sans" size="11.00000000" x="111.47574579" y="547.44355114" color="#00c0ffff" ts="0" fn="">?</text> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">105.87198390 250.33012178 241.24222994 250.33012178</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">217.56996752 259.52487360 281.00175425 259.52487360</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">169.11080069 268.96035180 278.89953087 268.96035180</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">57.45599524 279.82776538 280.17714169 279.82776538</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">57.61034444 290.42491674 215.22991380 290.42491674</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">159.39240801 299.27578563 282.58039586 299.27578563</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">59.27446020 307.57993942 285.76740013 307.57993942</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">59.09325361 319.10354034 277.69391444 319.10354034</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">60.70618714 329.64612232 88.11446941 329.64612232</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">203.89137661 367.26843276 283.96057728 367.26843276</stroke> | ||||
|       <stroke tool="highlighter" color="#00c0ff7f" width="8.50000000" fill="128">59.91988165 375.75851429 205.45026777 375.75851429</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">192.76820818 387.58468550 281.24622355 387.58468550</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">60.02270469 397.36719407 282.46994038 397.36719407</stroke> | ||||
|       <stroke tool="highlighter" color="#ffff007f" width="8.50000000" fill="128">58.97066012 406.28005276 93.93908865 406.28005276</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">151.41171011 440.05734845 283.60213135 440.05734845</stroke> | ||||
|       <stroke tool="pen" ts="0" fn="" color="#000000ff" width="1.41000000" fill="255">59.46191997 451.09311835 114.04007102 451.09311835</stroke> | ||||
|     </layer> | ||||
|   </page> | ||||
| </xournal> | ||||
		Reference in New Issue
	
	Block a user