2012-06-17 34 views

Trả lời

7

Có nó là, đây là một ví dụ, expaination trong các ý kiến:

enter image description here

import cv 
#open color and b/w images 
im = cv.LoadImageM('1_tree_small.jpg') 
im2 = cv.LoadImageM('1_tree_small.jpg',cv.CV_LOAD_IMAGE_GRAYSCALE) 
#set up our output and b/w in rgb space arrays: 
bw = cv.CreateImage((im.width,im.height), cv.IPL_DEPTH_8U, 3) 
new = cv.CreateImage((im.width*2,im.height), cv.IPL_DEPTH_8U, 3) 
#create a b/w image in rgb space 
cv.Merge(im2, im2, im2, None, bw) 
#set up and add the color image to the left half of our output image 
cv.SetImageROI(new, (0,0,im.width,im.height)) 
cv.Add(new, im, new) 
#set up and add the b/w image to the right half of output image 
cv.SetImageROI(new, (im.width,0,im.width,im.height)) 
cv.Add(new, bw, new) 
cv.ResetImageROI(new) 
cv.ShowImage('double', new) 
cv.SaveImage('double.jpg', new) 
cv.WaitKey(0) 

của nó trong python, nhưng dễ dàng để chuyển đổi bất cứ điều gì .. câu trả lời

+0

Cảm ơn Fraxel rất nhiều. Đây là những gì tôi đang tìm kiếm. Một lần nữa cám ơn. – mvr950

32

Fraxel đã giải quyết vấn đề với giao diện cv cũ. Tôi muốn hiển thị nó bằng cách sử dụng giao diện cv2, chỉ để hiểu làm thế nào điều này dễ dàng trong mô-đun cv2 mới. (Có thể nó sẽ là hữu ích cho khách truy cập trong tương lai). Dưới đây là các mã:

import cv2 
import numpy as np 

im = cv2.imread('kick.jpg') 
img = cv2.imread('kick.jpg',0) 

# Convert grayscale image to 3-channel image,so that they can be stacked together  
imgc = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR) 
both = np.hstack((im,imgc)) 

cv2.imshow('imgc',both) 
cv2.waitKey(0) 
cv2.destroyAllWindows() 

Và dưới đây là kết quả tôi nhận:

enter image description here

+0

Cảm ơn phiên bản mới. – mvr950

+0

@ abid-rahman-k có thể thực hiện tương tự với video không? mà không biến một thành màu xám? –

1

cải thiện nhỏ để mã với văn bản hiện đại

concatenate

thay vì

hstack

được ngưng (stack cũng có thể được sử dụng)

import cv2 
import numpy as np 

im = cv2.imread('kick.jpg') 
img = cv2.imread('kick.jpg',0) 

# Convert grayscale image to 3-channel image,so that they can be stacked together  
imgc = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR) 
both = np.concatenate((im,imgc), axis=1) #1 : horz, 0 : Vert. 

cv2.imshow('imgc',both) 
cv2.waitKey(0) 
cv2.destroyAllWindows() 
Các vấn đề liên quan