- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用傅里叶校正图像中的曝光。这是我面临的错误
5 padded = np.log(padded + 1) #so we never have log of 0
6 global complex
7 complex = cv2.dft(np.float32(padded)/255.0, flags = cv2.DFT_COMPLEX_OUTPUT)
8 complex = np.fft.fftshift(complex)
9 img = 20 * np.log(cv2.magnitude(complex[:,:,0], complex[:,:,1]))
error: OpenCV(4.4.0) /tmp/pip-req-build-njn2fp78/opencv/modules/core/src/dxt.cpp:3335: error: (-215:Assertion failed) type == CV_32FC1 || type == CV_32FC2 || type == CV_64FC1 || type == CV_64FC2 in function 'dft'
我的代码:
import cv2
import numpy as np
from math import exp, sqrt
image = cv2.imread("2.png")
# grayimg = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
height, width, alpha = image.shape
dft_M = cv2.getOptimalDFTSize(height)
dft_N = cv2.getOptimalDFTSize(width)
#Filter parameters
yh, yl, c, d0, = 0, 0, 0, 0
#User parameters
y_track, d0_track, c_track = 0, 0, 0
complex = 0
def main():
#copyMakeBorder(src, top, bottom, left, right, borderType[, dst[, value]])
#BORDER_CONSTANT = Pad the image with a constant value (i.e. black or 0)
padded = cv2.copyMakeBorder(image, 0, dft_M - height, 0, dft_N - width, cv2.BORDER_CONSTANT, 0)
padded = np.log(padded + 1) #so we never have log of 0
global complex
complex = cv2.dft(np.float32(padded)/255.0, flags = cv2.DFT_COMPLEX_OUTPUT)
complex = np.fft.fftshift(complex)
img = 20 * np.log(cv2.magnitude(complex[:,:,0], complex[:,:,1]))
cv2.namedWindow('Image', cv2.WINDOW_NORMAL)
cv2.imshow("Image", image)
cv2.resizeWindow("Image", 400, 400)
cv2.namedWindow('DFT', cv2.WINDOW_NORMAL)
cv2.imshow("DFT", np.uint8(img))
cv2.resizeWindow("DFT", 250, 250)
cv2.createTrackbar("YL", "Image", y_track, 100, setyl)
cv2.createTrackbar("YH", "Image", y_track, 100, setyh)
cv2.createTrackbar("C", "Image", c_track, 100, setc)
cv2.createTrackbar("D0", "Image", d0_track, 100, setd0)
cv2.waitKey(0)
cv2.destroyAllWindows()
def homomorphic():
global yh, yl, c, d0, complex
du = np.zeros(complex.shape, dtype = np.float32)
#H(u, v)
for u in range(dft_M):
for v in range(dft_N):
du[u,v] = sqrt((u - dft_M/2.0)*(u - dft_M/2.0) + (v - dft_N/2.0)*(v - dft_N/2.0))
du2 = cv2.multiply(du,du) / (d0*d0)
re = np.exp(- c * du2)
H = (yh - yl) * (1 - re) + yl
#S(u, v)
filtered = cv2.mulSpectrums(complex, H, 0)
#inverse DFT (does the shift back first)
filtered = np.fft.ifftshift(filtered)
filtered = cv2.idft(filtered)
#normalization to be representable
filtered = cv2.magnitude(filtered[:, :, 0], filtered[:, :, 1])
cv2.normalize(filtered, filtered, 0, 1, cv2.NORM_MINMAX)
#g(x, y) = exp(s(x, y))
filtered = np.exp(filtered)
cv2.normalize(filtered, filtered,0, 1, cv2.NORM_MINMAX)
cv2.namedWindow('homomorphic', cv2.WINDOW_NORMAL)
cv2.imshow("homomorphic", filtered)
cv2.resizeWindow("homomorphic", 600, 550)
def setyl(y_track):
global yl
yl = y_track
if yl == 0:
yl = 1
if yl > yh:
yl = yh - 1
homomorphic()
def setyh(y_track):
global yh
yh = y_track
if yh == 0:
yh = 1
if yl > yh:
yh = yl + 1
homomorphic()
def setc(c_track):
global c
c = c_track/100.0
if c == 0:
c_track = 1
homomorphic()
def setd0(d0_track):
global d0
d0 = d0_track
if d0 == 0:
d0 = 1
homomorphic()
main()
我不明白我面临的问题。我该如何解决这个问题?
描述
The ideal sizes 我们可以为图像制作新的边框尺寸,在底部和右侧(无论如何都可以做到)具有恒定值。 padding之后我们可以变换到频域,然后做一个shift
同态函数随后由负责在用户更改轨迹栏时更改其参数的函数调用。轨迹条是在主函数中定义的,并带有一个限制,一个与条相关的函数和一个对应于实际值的变量。条形图按模式保持在 0-100 范围内,负责更改过滤器的参数。
最佳答案
是的,情况是 3d 而不是 2d,这里是快速解决方案:
img = cv2.cvtColor(np.float32(image), cv2.COLOR_BGR2GRAY)
dft = cv2.dft(np.float32(img), flags=cv2.DFT_COMPLEX_OUTPUT)
关于python - (215 :Assertion failed) type == CV_32FC1 || type == CV_32FC2 || type == CV_64FC1 || type == CV_64FC2 in function 'dft' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64604533/
使用 FullCalendar 3.9.0,当您在日历中单击与背景颜色分配相同的一周的一天时,该行的突出显示 div 会覆盖 fc-bg div。 选择周时: background hidden 标准
我使用迁移学习方法训练模型并保存检测到的最佳权重。在另一个脚本中,我尝试使用保存的权重进行预测。但是我收到如下错误。我使用 ResNet 微调网络并有 4 个类。 RuntimeError: Erro
我的应用程序中有以下代码: DefaultHttpClient httpClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet(
我想学习如何使用React.FC<>在 react.js 的正常功能中。 我知道有两种类型的函数;第一个是(我更喜欢的那个): function Welcome(props) { re
所以我只是想知道使用一个而不是另一个有什么区别或原因...... export function Name() { return } 对比 export const Name = () => { r
我有以下代码: final RelativeLayout mFrame3 = (RelativeLayout) inflater.inflate( R.layout.ptrip, c
if (someId.matches("A") || someId.matches("a")) { addLetters(); addIcon(R.drawable.a
我有以下 XML: 我的部分Java代码: View.OnTouchListener llTouch = new View.OnTouchListener()
我正在使用 FullCalendar,并且 fc-more 链接存在一个持续存在的错误,该错误显示日历中列出的事件的重复项。 底层 mysql 调用不会产生重复。我认为当事件跨越多天时,日历中的某些内
我使用的是 Samsung Fascinate,构建版本是 4.2.1 AOSP (CM10.1 Nightly)。 相机实在是太糟糕了,所以我换了它。新的 Camera FC 正在启动,我拉了一个
我有一个正在开发的应用程序,到目前为止只编辑了 xml,当我尝试调试时我得到了这个: 调试: Thread [ main] (Suspended (exception RuntimeException
我有一个没有错误的绘图 Canvas ,但一直强制关闭。我不确定为什么要强制关闭。我对 Canvas 一无所知,如果有人能帮助我,那就太好了。 记录 cat 错误 05-03 10:07:12.803
我正在尝试在首选项布局中实现 DialogPreference。不幸的是,下面的代码总是导致强制关闭。 EditTextPreferences 运行良好,但我需要一个简单的对话框。有什么建议吗? 最
当 dragging an event日历上出现浅蓝色,我想是.fc-highlight class确定颜色但尝试用 css 覆盖它似乎不起作用,似乎也没有任何 draggable callbacks
我在月 View 中为星期日设置了背景图像,但标题中的“星期日”日也设置了相同的背景,而其他标题日期设置正确。我看到表线程的 css 也有 .fc-sun .fc-mon 等,但我不知道如何从线程中删
即使以管理员身份运行,它似乎也只有在我位于文件夹中时才能工作:C:\Windows\System32\ 关于如何让它在 C:\目录中的任何地方工作有什么建议吗? 最佳答案 您的 PATH 语句是 fu
FC++库提供了一种有趣的方法来支持 C++ 中的函数式编程概念。 FAQ 中的一个简短示例: take (5, map (odd, enumFrom(1))) FC++ 似乎从 Haskell 中汲
进程文件: fc or fc.exe 进程名称: CAMPURF virus 进程类别:存在安全风险的进程 英文描述: fc.exe is adde
有什么方法可以抑制 React.FC 中的水化警告吗?我有一个警告 Did not expect server HTML to contain a in 因为pause: isServer()东西,
我面临 ref 的问题 - 我需要引用功能组件并将 Prop 传递给它。到目前为止,我得到了我的父组件和子组件。在我的父组件中,我需要对我的 child 使用 ref。我需要在我的父组件中使用 pro
我是一名优秀的程序员,十分优秀!