Python OpenCV 加载图像

3 投票
3 回答
10544 浏览
提问于 2025-04-16 03:51

我刚接触Python和OpenCV,想知道怎么用Python在OpenCV中加载一张图片。有没有人能给我一个例子(带代码),解释一下怎么加载图片并显示出来?

import sys
import cv
from opencv.cv import *
from opencv.highgui import *
ll="/home/pavan/Desktop/iff pics/out0291.tif"
img= cvLoadImage( ll );
cvNamedWindow( “Example1”, CV_WINDOW_AUTOSIZE );
cvShowImage( “Example1”, img );
cvWaitKey(10);
cvDestroyWindow( “Example");

3 个回答

0

这里有两种方法可以解决这个问题:

  1. 使用 argparse(推荐):

    import cv2 import argparse ap = argparse.ArgumentParser() 

    ap.add_argument("-i", "--image", required = True,help = "图片的路径") args = vars(ap.parse_args()) 

    image = cv2.imread(args["image"])

这个方法会把图片路径作为一个参数传入,然后把这个参数转换并添加到 ap 中,最后用 imread 函数加载图片。

要运行这个程序:

首先,进入你需要的文件夹。

然后,激活你的环境。

接着,输入命令:python filename.py -i img.jpg

  1. 硬编码图片位置:

    import cv2 img = cv2.imread("\File\Loca\img.jpg") cv2.imshow("图片名称",img) cv2.waitKey(0) cv2.destroyAllWindows()

这个方法运行时不需要传入参数,直接执行就可以了。

0

当然可以!请看下面的内容:

在编程中,有时候我们需要让程序在特定的条件下执行某些操作。比如说,我们可能希望在用户输入错误时,程序能够给出提示,或者在数据加载完成后再显示内容。这种情况下,我们就会用到“条件语句”。

条件语句就像是一个分岔路口,程序会根据你设定的条件来决定走哪条路。如果条件满足,程序就会执行某个操作;如果不满足,程序可能会选择另一条路,或者什么都不做。

例如,如果你在编写一个简单的登录程序,你可能会检查用户输入的用户名和密码是否正确。如果正确,程序就会让用户进入系统;如果不正确,程序就会提示用户“用户名或密码错误”。

这样一来,程序就能根据用户的输入做出不同的反应,让使用体验更好。

希望这个解释能帮助你理解条件语句的基本概念!

import cv2
image_path = "/home/jay/Desktop/earth.jpg"
img = cv2.imread(image_path)  # For Reading The Image
cv2.imshow('image', img)      # For Showing The Image in a window with first parameter as it's title
cv2.waitKey(0)   #waits for a key to be pressed on a window 
cv2.destroyAllWindows() # destroys the window when the key is pressed
7

openCV2 的接口中,发生了不少变化:

import cv
ll = "/home/pavan/Desktop/iff pics/out0291.tif"
img = cv.LoadImage(ll)
cv.NamedWindow("Example", cv.CV_WINDOW_AUTOSIZE )
cv.ShowImage("Example", img )
cv.WaitKey(10000)
cv.DestroyWindow("Example")

现在的语法更简单,也更清晰了!

而且,你不需要像在matlab中那样在末尾加上 ;。最后,注意你使用的引号类型。

如果你想了解更新版的 openCV3 接口,可以看看这个问题的其他回答。

撰写回答