pyhton 掩码 筛选显示

目录

bitwise_and控制:

点乘:

性能对比:


bitwise_and控制:

python 复制代码
import cv2

# 读取彩色图和mask二值图
color_img = cv2.imread('color_image.jpg')
mask = cv2.imread('mask.jpg', 0)  # 以灰度模式读取二值图

# 确保彩色图和mask的尺寸一致
if color_img.shape[:2]!= mask.shape[:2]:
    mask = cv2.resize(mask, (color_img.shape[1], color_img.shape[0]))

# 对彩色图和mask进行按位与操作
result = cv2.bitwise_and(color_img, color_img, mask=mask)

# 显示结果
cv2.imshow('Result', result)
cv2.waitKey(0)
cv2.destroyAllWindows()

点乘:

python 复制代码
  mask = mask_o == 0  # 这里假设 0 表示需要遮罩的区域
                    # 对原图像进行遮罩处理
  mask_image = image * mask[:, :, None]  # 扩展掩码为三维并与图像相乘

性能对比:

python 复制代码
import cv2
import numpy as np
import time

if __name__ == '__main__':

    # 创建一个模拟的1080p彩色图像(这里使用随机像素值生成)
    image = np.random.randint(0, 256, (1080, 1920, 3), dtype=np.uint8)

    # 创建一个模拟的二值mask图像,这里简单假设一半区域为需要遮罩区域(0表示遮罩)
    mask_o = np.random.randint(0, 2, (1080, 1920), dtype=np.uint8)
    mask = mask_o == 0

    # 方法一:使用乘法运算进行遮罩处理
    start_time_1 = time.time()
    mask_image_1 = image * (mask[:, :, None])
    end_time_1 = time.time()
    print(f"使用乘法运算进行遮罩处理耗时: {end_time_1 - start_time_1} 秒")

    # 方法二:使用cv2.bitwise_and进行遮罩处理
    # 先将mask转换为合适的格式(与图像通道数匹配的三通道形式)
    mask_3_channel = np.stack([mask] * 3, axis=2).astype(np.uint8)
    start_time_2 = time.time()
    mask_image_2 = cv2.bitwise_and(image, image, mask=mask.astype(np.uint8))
    end_time_2 = time.time()
    print(f"使用cv2.bitwise_and进行遮罩处理耗时: {end_time_2 - start_time_2} 秒")

使用乘法运算进行遮罩处理耗时: 0.00599980354309082 秒

使用cv2.bitwise_and进行遮罩处理耗时: 0.0030002593994140625 秒

相关推荐
RAG专家2 小时前
【Mixture-of-RAG】将文本和表格与大型语言模型相结合
人工智能·语言模型·rag·检索增强生成
星期天要睡觉5 小时前
自然语言处理(NLP)——自然语言处理原理、发展历程、核心技术
人工智能·自然语言处理
低音钢琴5 小时前
【人工智能系列:机器学习学习和进阶01】机器学习初学者指南:理解核心算法与应用
人工智能·算法·机器学习
飞翔的佩奇6 小时前
【完整源码+数据集+部署教程】【天线&水】舰船战舰检测与分类图像分割系统源码&数据集全套:改进yolo11-repvit
前端·python·yolo·计算机视觉·数据集·yolo11·舰船战舰检测与分类图像分割系统
大千AI助手6 小时前
Hoeffding树:数据流挖掘中的高效分类算法详解
人工智能·机器学习·分类·数据挖掘·流数据··hoeffding树
新知图书6 小时前
大模型微调定义与分类
人工智能·大模型应用开发·大模型应用
山烛6 小时前
一文读懂YOLOv4:目标检测领域的技术融合与性能突破
人工智能·yolo·目标检测·计算机视觉·yolov4
大千AI助手6 小时前
独热编码:分类数据处理的基石技术
人工智能·机器学习·分类·数据挖掘·特征工程·one-hot·独热编码
钱彬 (Qian Bin)7 小时前
项目实践4—全球证件智能识别系统(Qt客户端开发+FastAPI后端人工智能服务开发)
人工智能·qt·fastapi
钱彬 (Qian Bin)7 小时前
项目实践3—全球证件智能识别系统(Qt客户端开发+FastAPI后端人工智能服务开发)
人工智能·qt·fastapi