weixin_46887967 2021-08-24 11:03 采纳率: 67.9%
浏览 44
已结题

大家好我想实现这样一个效果

img

大家好 我想实现这样一个图片展示的效果,中间是原图,周围四张图代表的是四种不同的的效果,再加上个背景图,想用python语言实现,或者是一些数据可视化大屏工具也可以。

  • 写回答

2条回答 默认 最新

  • 程序媛一枚~ Python领域新星创作者 2021-08-24 17:06
    关注

    纯numpy数组切片以及照片缩放实现,应博友要求,周围4张显示了 原始图转换后的HSV颜色空间图,中间显示了原始图。

    img

    # 纯numpy实现背景图及拼图
    import cv2
    
    import imutils
    
    # 背景边框大小
    # 每张图片大小
    # 9宫格图片之间的缝隙
    border = 100
    img_size = 200
    img_gap = 50
    bg_size = img_size * 3 + img_gap * 2 + border * 2
    
    bg_img = cv2.imread("images/bg.jpg")
    bg_img = cv2.resize(bg_img, (bg_size, bg_size))
    
    # 读取照片
    img = cv2.imread("images/yl_300.jpg")
    # 缩放照片为宽度*高度
    img = cv2.resize(img, (img_size, img_size))
    
    for i in range(3):
        for j in range(4)[1:]:
            t = i * 3 + j
            # print(i, j, t)
            # print(border + i * (img_size + img_gap), border + (i + 1) * (img_size) + i * img_gap,
            #       border + (j - 1) * (img_size + img_gap), border + j * img_size + (j - 1) * img_gap)
            if (t == 2 or t == 4 or t == 6 or t == 8):
                continue
    
            # 读取照片,并缩放其大小为img_size*img_size
            img = cv2.imread("images/yl_300.jpg")
            img = cv2.resize(img, (img_size, img_size))
    
            if t != 5:
                img = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
    
            # 计算要替换的照片高度:高度,宽度:宽度
            bg_img[border + i * (img_size + img_gap): border + (i + 1) * (img_size) + i * img_gap,
            border + (j - 1) * (img_size + img_gap):border + j * img_size + (j - 1) * img_gap] = img
            cv2.imshow("img_" + str(t), bg_img)
            # cv2.waitKey(0)
    
    # 保留宽高比的缩放照片为宽度500像素
    bg_img = imutils.resize(bg_img, width=500)
    cv2.imshow("res", bg_img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月2日
  • 已采纳回答 8月25日
  • 创建了问题 8月24日

悬赏问题

  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab