【发布时间】:2021-03-01 01:27:42
【问题描述】:
我正在尝试获取图像的梯度,并期望相邻像素值之间的差异很大。更改我的像素值。顺便说一句,我不想使用任何 opencv 函数。这是我正在尝试工作的代码,但代码的结果保持在其初始状态。
import cv2
import numpy as np
img = cv2.imread('coins.jpg',0)
rows,cols = img.shape
for i in range(rows):
for j in range(cols):
if(((i+1) <= rows) and ((j+1) <= cols) and ((i-1) >= rows) and ((j-1) >= cols)):
value = img[i,j]
value1 = img[i+1,j]
value2 = img[i-1,j]
value3 = img[i,j+1]
value4 = img[i,j-1]
value5 = img[i+1,j+1]
value6 = img[i+1,j-1]
value7 = img[i-1,j-1]
value8 = img[i-1,j+1]
if(abs(value - value1) >= 10):
value = 255
if(abs(value - value2) >= 10):
value = 255
if(abs(value - value3) >= 10):
value = 255
if(abs(value - value4) >= 10):
value = 255
if(abs(value - value5) >= 10):
value = 255
if(abs(value - value6) >= 10):
value = 255
if(abs(value - value7) >= 10):
value = 255
if(abs(value - value8) >= 10):
value = 255
cv2.imshow('Difference Im', img)
cv2.waitKey(0)
【问题讨论】:
标签: python image numpy opencv image-processing