Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.49 KB | None | 0 0
  1. $ diff -d <(hexdump -C old.bmp) <(hexdump -C new.bmp )
  2.  
  3. 3c3
  4. < 00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
  5. ---
  6. > 00000020 00 00 00 b6 e5 00 11 0b 00 00 11 0b 00 00 00 00 |................|
  7. 940396,940404c940396,940408
  8. < 00e597d0 6a 72 71 6a 72 71 00 00 00 00 00 00 00 00 00 00 |jrqjrq..........|
  9. < 00e597e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
  10. < *
  11. < 00e59830 00 00 00 00 00 00 77 00 00 79 00 00 00 00 00 00 |......w..y......|
  12. < 00e59840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
  13. < *
  14. < 00e59870 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7e 00 |..............~.|
  15. < 00e59880 00 7d 00 00 00 00 00 00 00 00 00 00 00 7f 00 00 |.}..............|
  16. < 00e59890 00 00 00 7e 00 00 00 00 00 00 00 00 00 00 a3 96 |...~............|
  17. ---
  18. > 00e597d0 6a 72 71 6a 72 71 9a a3 a7 9b a4 a8 97 a0 a4 94 |jrqjrq..........|
  19. > 00e597e0 9d a1 96 9f a3 99 a2 a6 96 a2 a4 97 a3 a5 96 a2 |................|
  20. > 00e597f0 a4 97 a3 a5 9b a6 aa 9c a7 ab 93 9e a2 84 8f 93 |................|
  21. > 00e59800 85 91 95 92 9e a2 8b 96 9a 81 8c 90 85 90 94 97 |................|
  22. > 00e59810 a2 a6 9b a6 aa 92 9d a1 8c 97 9b 86 91 95 85 90 |................|
  23. > 00e59820 94 89 94 98 88 93 97 88 93 97 92 9d a1 9f aa ae |................|
  24. > 00e59830 99 a4 a8 88 93 97 77 82 86 79 84 88 81 8c 90 81 |......w..y......|
  25. > 00e59840 8c 90 85 90 94 8b 96 9a 89 94 98 8d 98 9c 95 a0 |................|
  26. > 00e59850 a4 98 a3 a7 92 9c a3 8c 96 9d 8e 98 9f 91 9b a2 |................|
  27. > 00e59860 92 9c a3 94 9e a5 94 9c a3 8e 96 9d 8f 97 9e 90 |................|
  28. > 00e59870 98 9f 92 9a a1 9f a7 ae a0 a8 af 90 98 9f 7e 86 |..............~.|
  29. > 00e59880 8d 7d 85 8c 83 8b 92 86 8e 95 80 88 8f 7f 87 8e |.}..............|
  30. > 00e59890 81 89 90 7e 86 8d 83 8b 92 8a 92 99 94 9c a3 96 |...~............|
  31.  
  32. la ligne a l'offset 00000020 c'est les diff de l'entete, pas pertinent
  33. le gros bloc qui diff ensuite c'est ni plus ni moins que la premiere ligne en haut a gauche de l'image
  34.  
  35. concretement cette ligne est composée de pixels noirs {0,0,0} avec quelques pixels bleus et le dernier est un pixel rouge {a3,0,0} (et on a un octet 0x96 qui traine a la fin, osef imo)
  36.  
  37. la premiere ligne est dumpée comme suit :
  38.  
  39. (0, 0) RVB : (0,0,0) (#000000)
  40. (1, 0) RVB : (0,0,0) (#000000)
  41. (2, 0) RVB : (0,0,0) (#000000)
  42. (3, 0) RVB : (0,0,0) (#000000)
  43. (4, 0) RVB : (0,0,0) (#000000)
  44. (5, 0) RVB : (0,0,0) (#000000)
  45. (6, 0) RVB : (0,0,0) (#000000)
  46. (7, 0) RVB : (0,0,0) (#000000)
  47. (8, 0) RVB : (0,0,0) (#000000)
  48. (9, 0) RVB : (0,0,0) (#000000)
  49. (10, 0) RVB : (0,0,0) (#000000)
  50. (11, 0) RVB : (0,0,0) (#000000)
  51. (12, 0) RVB : (0,0,0) (#000000)
  52. (13, 0) RVB : (0,0,0) (#000000)
  53. (14, 0) RVB : (0,0,0) (#000000)
  54. (15, 0) RVB : (0,0,0) (#000000)
  55. (16, 0) RVB : (0,0,0) (#000000)
  56. (17, 0) RVB : (0,0,0) (#000000)
  57. (18, 0) RVB : (0,0,0) (#000000)
  58. (19, 0) RVB : (0,0,0) (#000000)
  59. (20, 0) RVB : (0,0,0) (#000000)
  60. (21, 0) RVB : (0,0,0) (#000000)
  61. (22, 0) RVB : (0,0,0) (#000000)
  62. (23, 0) RVB : (0,0,0) (#000000)
  63. (24, 0) RVB : (0,0,0) (#000000)
  64. (25, 0) RVB : (0,0,0) (#000000)
  65. (26, 0) RVB : (0,0,0) (#000000)
  66. (27, 0) RVB : (0,0,0) (#000000)
  67. (28, 0) RVB : (0,0,0) (#000000)
  68. (29, 0) RVB : (0,0,0) (#000000)
  69. (30, 0) RVB : (0,0,0) (#000000)
  70. (31, 0) RVB : (0,0,0) (#000000)
  71. (32, 0) RVB : (0,0,119) (#000077)
  72. (33, 0) RVB : (0,0,121) (#000079)
  73. (34, 0) RVB : (0,0,0) (#000000)
  74. (35, 0) RVB : (0,0,0) (#000000)
  75. (36, 0) RVB : (0,0,0) (#000000)
  76. (37, 0) RVB : (0,0,0) (#000000)
  77. (38, 0) RVB : (0,0,0) (#000000)
  78. (39, 0) RVB : (0,0,0) (#000000)
  79. (40, 0) RVB : (0,0,0) (#000000)
  80. (41, 0) RVB : (0,0,0) (#000000)
  81. (42, 0) RVB : (0,0,0) (#000000)
  82. (43, 0) RVB : (0,0,0) (#000000)
  83. (44, 0) RVB : (0,0,0) (#000000)
  84. (45, 0) RVB : (0,0,0) (#000000)
  85. (46, 0) RVB : (0,0,0) (#000000)
  86. (47, 0) RVB : (0,0,0) (#000000)
  87. (48, 0) RVB : (0,0,0) (#000000)
  88. (49, 0) RVB : (0,0,0) (#000000)
  89. (50, 0) RVB : (0,0,0) (#000000)
  90. (51, 0) RVB : (0,0,0) (#000000)
  91. (52, 0) RVB : (0,0,0) (#000000)
  92. (53, 0) RVB : (0,0,0) (#000000)
  93. (54, 0) RVB : (0,0,0) (#000000)
  94. (55, 0) RVB : (0,0,0) (#000000)
  95. (56, 0) RVB : (0,0,126) (#00007E)
  96. (57, 0) RVB : (0,0,125) (#00007D)
  97. (58, 0) RVB : (0,0,0) (#000000)
  98. (59, 0) RVB : (0,0,0) (#000000)
  99. (60, 0) RVB : (0,0,0) (#000000)
  100. (61, 0) RVB : (0,0,127) (#00007F)
  101. (62, 0) RVB : (0,0,0) (#000000)
  102. (63, 0) RVB : (0,0,126) (#00007E)
  103. (64, 0) RVB : (0,0,0) (#000000)
  104. (65, 0) RVB : (0,0,0) (#000000)
  105. (66, 0) RVB : (163,0,0) (#A30000)
  106.  
  107. (btw en fait de coordonnées, l'abcisse equivaut au numéro de l'octet, pas au numéro du pixel dans l'image)
  108.  
  109. le header de l'image etait le suivant :
  110.  
  111. BMP FILE HEADER
  112. ===============
  113. Magic number : BM
  114. Taille du fichier : 15054390 octets
  115. Reserved 1 : 0
  116. Reserved 2 : 0
  117. Offset de l'image : 54
  118.  
  119. BMP INFO HEADER
  120. ===============
  121. Size : 40
  122. Largeur : 2592
  123. Hauteur : 1936
  124. Plans : 1
  125. Bits par pixel : 24
  126. Compression : 0
  127. SizeImage : 0
  128. XPelsPerMeter : 0
  129. YPelsPerMeter : 0
  130. ClrUsed : 0
  131. ClrImportant : 0
  132.  
  133. on remarque une chose c'est que la ligne noire jusqu'au premier pixel rouge {a3,0,0} fait 66 octets (soit 22 pixels)
  134. et (Largeur*Hauteur)/66 donne un compte rond, ca correspond etrangement bien
  135.  
  136. piste => on peut facilement envisager qu'il faille etablir un masque avec les octets allumés dans la 1ere ligne sur le reste de l'image, mais comment ?
  137. de bas en haut (sens de l'image BMP) ? de haut en bas (sens de lecture du fichier) ?
  138. on peut envisager aussi que le fameux LSB intervienne un moment donné, il s'agirait donc de recuperer dans l'intégralité de l'image les derniers bits correspondants au masque de la 1ere ligne ? et ensuite, reconstituer des octets avec tout ca ?
  139.  
  140. perso je le sens bien comme ca mais plus le temps d'implem pour ma part.. hf
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement