麒麟系统播放图片 速度比较
pygame效果比opencv好,opencv有锯齿:
import pygame
import os
import timedef show_image_sdl(image_path):"""使用SDL2快速显示图片"""# 初始化pygamepygame.init()# 获取屏幕信息info = pygame.display.Info()screen_width, screen_height = info.current_w, info.current_h# 创建全屏窗口screen = pygame.display.set_mode((screen_width, screen_height), pygame.FULLSCREEN)pygame.display.set_caption("快速图片查看器")pygame.mouse.set_visible(False) # 隐藏鼠标# 加载图片try:# 直接加载并转换格式以加速显示image = pygame.image.load(image_path).convert()# 计算缩放比例(屏幕两倍大小)img_width, img_height = image.get_size()scale_x = (screen_width * 1) / img_widthscale_y = (screen_height * 1) / img_heightscale_factor = min(scale_x, scale_y)# 缩放图片new_width = int(img_width * scale_factor)new_height = int(img_height * scale_factor)scaled_image = pygame.transform.smoothscale(image, (new_width, new_height))# 计算居中位置x_pos = (screen_width - new_width) // 2y_pos = (screen_height - new_height) // 2# 显示图片screen.blit(scaled_image, (x_pos, y_pos))pygame.display.flip()print(f"图片显示完成: {new_width}x{new_height}")# 等待退出running = Truewhile running:for event in pygame.event.get():if event.type == pygame.QUIT or \(event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE):running = Falsetime.sleep(0.01) # 减少CPU占用except Exception as e:print(f"错误: {e}")finally:pygame.quit()# 使用
if __name__ == "__main__":show_image_sdl("/home/yklele/hongmeng_s.jpg")