日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CenterCrop图像裁剪原理

發布時間:2023/12/9 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CenterCrop图像裁剪原理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CenterCrop模式解決的就是:

  • ??圖片要去兩頭,留中間?
  • ? 圖片要填充滿控件
  • ? 我們按照Image與ImageView的寬高比差值,分兩種情況進行討論。

    ? 假設原始圖片高h,寬w , Imageview的高y,寬x ,比較兩者高寬比。裁剪出的圖稱為Image1:

    ? 1、 當 y / x - h / w > 0 時

    ? 說明Imageview的高寬比大于圖片的高寬比,如圖所示:

    左圖實線標示的是圖片Image的高和寬,右圖是Imageview。 我們需要從Image的中間按照比例y/x裁剪出一幅圖Image1來,如圖中虛線所示。

    ? 顯而易見,Image1的寬度是w1,高度是h 。

    ? Image1的高寬比必須和Imageview的高寬比相同,即 y / x = h / w1 , 計算出 w1 = (h * x )/ y
    ?

    ?2、當 y / x - h / w <= 0時

    ? 說明Imageview的高寬比小于圖片的高寬比,如圖所示:

    顯而易見,Image1高度為h1, 寬度為w ,依據 y / x = h1 / w , 計算出 h1 = (w * y) / x

    pytorch官方文檔說明:

    ?

    現在通過一個案例進行介紹:

    代碼:

    import torchvision.transforms import PIL.Image as Image import torchvision.transforms#讀入圖片 image=Image.open("/home/alisa/PycharmProjects/attack/target_attack/1/train_target.png") print(image.size, image.format, image.mode)#生成一個CenterCrop類的對象,用來將圖片從中心裁剪成224*224 crop_obj = torchvision.transforms.CenterCrop((224, 224)) image = crop_obj(image) #將裁剪之后的圖片保存下來 image.save("/home/alisa/PycharmProjects/attack/target_attack/1/train_target2.png", format='PNG')

    效果:

    總結

    以上是生活随笔為你收集整理的CenterCrop图像裁剪原理的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。