小编mpe*_*kov的帖子

四人帮:lexi编辑c ++源码

我正在阅读"设计模式:可重用OOSW的元素".在第二章中,作者提供了一个他们称为Lexi的编辑器的案例研究,它似乎是用C++编写的.我到处寻找,但我能找到的唯一有用的链接说:

Gof在一份说明中告诉我们,Lexi是基于"Doc,由Calder开发的文本编辑应用程序".但本文仅概述了一位编辑,没有任何消息来源.而且我甚至认为,Lexi 从未真正作为一个项目存在过.

该链接提供了Delphi源代码.我正在使用C++,因为这就是我所熟悉的,这就是本书中使用的内容.

有谁知道我在哪里可以找到Lexi的C++源代码?如果原版从未存在过,那么找一些我可以用作基础的东西会很好.我真的不想从头开始编写我自己的文本编辑器,所以我可以完成本书中的案例研究.

c++ design-patterns

29
推荐指数
3
解决办法
6273
查看次数

配置cv :: imshow的窗口位置

有没有办法改变cv::imshow调用时弹出窗口的位置?

对我来说,窗口看起来似乎部分在屏幕外,所以我必须拖动它才能看到整个图像.每次都必须这样做非常烦人.

我查看了参考手册 - 看起来你可以控制窗口标题的内容,但我看不到任何与窗口位置有关的内容.

哦,如果我使用旧的C接口(cvShowImage),行为是一样的.

有任何想法吗?

opencv image-processing

25
推荐指数
2
解决办法
2万
查看次数

从编码图像和视频中提取DCT系数

有没有办法从编码图像和视频中轻松提取DCT系数(和量化参数)?任何解码器软件都必须使用它们来解码块DCT编码的图像和视频.所以我很确定解码器知道它们是什么.有没有办法将它们暴露给使用解码器的人?

我正在实施一些直接在DCT域中工作的视频质量评估算法.目前,我的大部分代码都使用OpenCV,因此如果有人知道使用该框架的解决方案,那将会很棒.我不介意使用其他库(也许是libjpeg,但这似乎只适用于静止图像),但我主要担心的是尽可能少地执行格式化工作(我不想重新发明轮子并写入我自己的解码器).我希望能够打开OpenCV可以打开的任何视频/图像(H.264,MPEG,JPEG等),如果它是块DCT编码,则可以获得DCT系数.

在最坏的情况下,我知道我可以编写自己的块DCT代码,通过它运行解压缩的帧/图像,然后我将回到DCT域.这不是一个优雅的解决方案,我希望我能做得更好.

目前,我使用相当常见的OpenCV样板来打开图像:

IplImage *image = cvLoadImage(filename);
// Run quality assessment metric
Run Code Online (Sandbox Code Playgroud)

我用于视频的代码同样微不足道:

CvCapture *capture = cvCaptureFromAVI(filename);    
while (cvGrabFrame(capture))
{
    IplImage *frame = cvRetrieveFrame(capture);
    // Run quality assessment metric on frame
}
cvReleaseCapture(&capture);
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,我都获得了IplImageBGR格式的3通道.有什么方法可以得到DCT系数吗?

opencv image-processing video-processing dct

17
推荐指数
1
解决办法
2万
查看次数

用Butterworth滤波器去除正弦噪声

我试图去除此图像中的正弦噪声:

在此输入图像描述

这是它的DFT光谱(应用对数和任意强度缩放后):

在此输入图像描述

我已经有一个巴特沃斯滤镜应用于此图像.它将淘汰中频峰值.加载后我正在注意将它从[0..255]缩放到[0..1.0].这是过滤器:

在此输入图像描述

结果不是很好:

在此输入图像描述

我的问题:

  • 为什么图像中仍然存在大量噪音?
  • 为什么结果比原始图像更暗?过滤器显然没有触及DC项,所以我希望平均强度是相同的.
  • 为什么过滤器只取出一些峰值?它来自一本教科书,所以我倾向于认为它是正确的,但在频谱中还有其他峰值 - 它们也是噪声的一部分吗?我尝试使用同心滤镜去除它们,但它没有做太多好事,并使图像变暗无法识别.

我拍摄了图像(裁剪)并从Gonzalez和Woods的数字图像处理书中过滤.在它们的示例中,通过滤波完全去除周期性噪声,并且图像的平均强度保持相同.

我的加载图像和过滤器,DFT,过滤,IDFT的源代码如下:

import cv

def unshift_crop(comp, width, height):
    result = cv.CreateImage((width, height), cv.IPL_DEPTH_8U, 1)
    for x in range(height):
        for y in range(width):
            real, _, _, _ = cv.Get2D(comp, x, y)
            real = int(real) * ((-1)**(x+y))
            cv.Set2D(result, x, y, cv.Scalar(real))
    return result

def load_filter(fname):
    loaded = cv.LoadImage(fname, cv.CV_LOAD_IMAGE_GRAYSCALE)
    flt = cv.CreateImage(cv.GetSize(loaded), cv.IPL_DEPTH_32F, 2)
    width, height = cv.GetSize(loaded)
    for i in range(width*height):
        px, _, _, _ = cv.Get1D(loaded, …
Run Code Online (Sandbox Code Playgroud)

python opencv image-processing

14
推荐指数
1
解决办法
4371
查看次数

为什么我的Github托管站点使用HTTP 302而不是200响应?

我拥有域penkov.id.au.我使用github托管一个博客,其子记录的A记录指向github页面服务器(204.232.175.78).michael.penkov.id.au

bash-3.2$ dig michael.penkov.id.au +nocomments +nocmd +nostats

; <<>> DiG 9.8.3-P1 <<>> michael.penkov.id.au +nocomments +nocmd +nostats
;; global options: +cmd
;michael.penkov.id.au.          IN      A
michael.penkov.id.au.   86400   IN      A       204.232.175.78
penkov.id.au.           14399   IN      NS      ns1.linode.com.
penkov.id.au.           14399   IN      NS      ns5.linode.com.
penkov.id.au.           14399   IN      NS      ns4.linode.com.
penkov.id.au.           14399   IN      NS      ns2.linode.com.
penkov.id.au.           14399   IN      NS      ns3.linode.com.
ns1.linode.com.         62648   IN      A       69.93.127.10
ns1.linode.com.         136520  IN      AAAA    2600:3c00::a
ns2.linode.com.         67499   IN      A       65.19.178.10
ns2.linode.com.         122812  IN      AAAA    2600:3c01::a …
Run Code Online (Sandbox Code Playgroud)

dns redirect facebook http github

14
推荐指数
2
解决办法
2540
查看次数

OpenCV不报告准确的帧速率/计数

我有一个33秒的视频,我正在尝试使用OpenCV处理.我的目标是确定每个帧对应的时间实例(相对于视频的开头).我这样做是为了能够比较以不同帧速率录制的同一场景的视频中的帧.

什么工作:

  • FPS正确报告为59.75.这与ffprobe报告一致,所以我很高兴相信这是正确的.

我遇到的问题是:

  • CAP_PROP_POS_MSEC返回不正确的值.截至视频结束时,最高可达557924毫秒(超过9分钟).对于33s的视频,这可能不对.
  • CAP_PROP_FRAME_COUNT也是不正确的.它被报道为33371,以59.75 fps的速度拍摄超过9分钟的镜头.与上述错误一致,但仍然不正确.
  • CAP_PROP_POS_FRAME 同样不正确.

视频可以在这里找到(大约10MB).

关于什么可能出错的任何想法?

ffprobe 输出:

FFprobe version SVN-r20090707, Copyright (c) 2007-2009 Stefano Sabatini
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 1
  libavformat   52.31. 0 / 52.31. 0
  built on Jan 20 2010 00:13:01, gcc: 4.4.3 20100116 (prerelease)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/misha/Dropbox/Public/sequence.mp4':
  Duration: 00:00:33.37, start: 0.000000, bitrate: 2760 kb/s
    Stream #0.0(und): Video: h264, yuv420p, 1920x1080, 59.75 tbr, 1k tbn, 2k tbc
    Stream …
Run Code Online (Sandbox Code Playgroud)

c++ video opencv video-processing

13
推荐指数
1
解决办法
1万
查看次数

检测肖像图像中的头发?

在简单的肖像图像中检测和移除人的头发的最佳方法是什么?任何有用的算法库?我一直在关注openCV,看起来它可能有些用处

opencv image-manipulation image-processing

12
推荐指数
2
解决办法
1万
查看次数

圆2除以2的幂

我正在从教科书中实现量化算法.我正处于几乎可以工作的地方,除了我在四舍五入时得到一个一个错误.这就是教科书对此的评价:

2^p可以通过添加偏移和右移位p位位置来执行舍入除法

现在,我对正确的转变有所了解,但他们谈论的是什么偏移?

这是我的示例代码:

def scale(x, power2=16):
    if x < 0:
        return -((-x) >> power2)
    else:
        return x >> power2
def main():
    inp = [ 12595827, -330706, 196605, -387168, -274244, 377496, -241980, 
            -545272,  -196605, 24198,   196605,  193584, 104858, 424683,
            -40330,     41944 ]
    expect = [ 192, -5, 3, -6, -4, 5, -3, -8, -3, 0, 3, 3, 1, 6, 0, 0 ]
    actual = map(scale, inp)
    for i in range(len(expect)):
        if actual[i] == expect[i]:
            continue
        print 'inp: % 8d …
Run Code Online (Sandbox Code Playgroud)

python bit-manipulation rounding bitwise-operators

12
推荐指数
1
解决办法
1199
查看次数

OpenCV在同一窗口中相邻显示2个图像

我试图使用OpenCV在同一窗口中水平相邻地显示2个图像.

我已经尝试过使用adjustROI函数.图像1的宽度为1088像素,高度为2208像素,而图像2的宽度为1280像素,高度为2208像素.请在下面的代码中提出可能出现的问题.我得到的是一张图片大小Image2也包含Image2的内容.

Mat img_matches=Mat(2208,2368,imgorig.type());//set size as combination of img1 and img2
img_matches.adjustROI(0,0,0,-1280); 
imgorig.copyTo(img_matches);
img_matches.adjustROI(0,0,1088,1280);
imgorig2.copyTo(img_matches);
Run Code Online (Sandbox Code Playgroud)

opencv roi image-processing

12
推荐指数
3
解决办法
3万
查看次数

11
推荐指数
3
解决办法
4万
查看次数