PingTu
题目分析
- 图片匹配度分析
- 大量碎图片拼图
开始
1.题目
题目给了一个source.jpg和一个文件夹,文件夹里面是1600个图片碎片。


2.初判
直觉就是拼图题。
小图片是9654
大图片是38402160
常规逻辑应该是拼图,正好是40*40张的图片。
但是真的去拼,因为图片数量实在太多,导致速度很慢,也无法导出有意义的图片。
3.再分析

简单翻一翻,可以翻到一些明显是flag片段的小图片。那么是否可以把每个小图片去跟source.jpg比对,因为写了flag肯定会有所差别,那就把这些有差别的图片弄出来,拼起来不就是flag了?
所以题目会给出source.jpg就有的解释了。
4.开干
有了方向就可以开搞了。python里面cv2库正好可以计算两张图片的匹配度。脚本也相对简单。
#!python3
# -*- coding: utf-8 -*-
# @Time : 2020/11/11 23:26
# @Author : A.James
# @FileName: tt.py
from cv2 import cv2
import os
import shutil

博客讲述了通过图像匹配度分析解决拼图问题的过程。首先,分析题目发现是将1600个图片碎片拼成40x40的图像。然后,通过比较碎片与源图像的差异,找出包含flag片段的图片进行拼接,最终成功获取flag。

369

被折叠的 条评论
为什么被折叠?



