Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

linsencc/ImageNetAttack

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

图像识别

数据集:ImageNet

模型:ResNet-50

输入参数说明

optional arguments:

  --image(str) 图片的路径 

  --method(str) {identify,fgsm,ifgsm,mifgsm,deefool} 识别或攻击方法
  
  --eps(float) 生成对抗样本时其扰动大小限制,范围 0-20

  --interation(int) 生成对抗样本时其迭代次数,范围 0-10

  --alpha(float) 生成对抗样本时其迭代步长,范围 0-2

  --decay(float) MI-FGSM攻击中的decay系数,范围 0-1 

输出参数说明

# 执行成功:
# 返回code字段固定为0, msg字段固定为success,data字段为具体信息
{'code': 0, 'msg': 'success', 'data': {...}}

# 执行失败
# 返回code字段固定为1, msg字段为栈错误信息,data字段为空
{'code': 1, 'msg': 'err msg', 'data': {}}

例子

1. 识别图片

# 要且只要命令行中使用到的参数
python3 handler.py --image images/dog.jpg --method identify 

# 返回值
{
  'code': 0, 
  'msg': 'success', 
  'data': {
    'predict': 'sports car, sport car', 
    'distribution': {
      'sports car, sport car': '35.5%', 
      'convertible': '16.3%', 
      'car wheel': '5.9%', 
      'beach wagon, station wagon, wagon, estate car, beach waggon, station waggon, waggon': '4.1%',
       'grille, radiator grille': '2.1%'
    }
  }
}

2. fgsm 攻击

# 要且只要命令行中使用到的参数
python handler.py --image images/dog.jpg --method fgsm --eps 20

# 返回值(所有攻击的返回值格式一致)
{
  'code': 0, 
  'msg': 'success', 
  'data': {
    'predict': 'jeep, landrover',   # 预测值
    'distribution': {               # top5 预测分布
      'jeep, landrover': '14.1%',   
      'beach wagon, station wagon, wagon, estate car, beach waggon, station waggon, waggon': '6.9%', 
      'pickup, pickup truck': '4.2%', 
      'car wheel': '3.5%', 
      'Model T': '3.1%'
      }, 
    'adv_image_path': 'images/adv_car.jpg',     # 生成对抗样本图片所保存路径,保存路径与输入图片一致
    'noise_image_path': 'images/noise_car.jpg'  # 生成对抗噪声图片所保存路径,保存路径与输入图片一致
  }
}

2. ifgsm 攻击

# 要且只要命令行中使用到的参数
python handler.py --image 5.jpg --method ifgsm --eps 15 --iteration 10 --alpha 2

# 返回值(所有攻击的返回值格式与fgsm攻击一致)

3. mifgsm 攻击

# 要且只要命令行中使用到的参数
python handler.py --image 5.jpg --method mifgsm --eps 15 --iteration 10 --alpha 2 --decay 0.8

# 返回值(所有攻击的返回值格式与fgsm攻击一致)

4. deepfool 攻击

# 要且只要命令行中使用到的参数
python handler.py --image 5.jpg --method deepfool --eps 10 --iteration 1

# 返回值(所有攻击的返回值格式与fgsm攻击一致)

About

ImageNet数据集 ResNet-50模型攻击实现

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.