小编Ghi*_*ADJ的帖子

在长时间的过程中与Tkinter窗口交互

我有一个基本的python类,使用标准Tkinter库创建一个窗口:

import Tkinter

class GUI(Tkinter.Tk):

    def __init__(self,parent):
        Tkinter.Tk.__init__(self,parent)
        self.parent = parent
        self.initialize()

    def lock_func(self):
        while 1==1:
            print "blah"

    def initialize(self):
        self.processBtn = Tkinter.Button(self, text="Process", command=self.lock_func)
        self.processBtn.pack()        

app = GUI(None)
app.mainloop()
Run Code Online (Sandbox Code Playgroud)

当我按下Process按钮时,窗口没有响应.我希望能够在运行时关闭程序(使用x按钮)lock_func.

python user-interface tkinter

5
推荐指数
1
解决办法
3984
查看次数

PyTesser简单的使用错误

我已经下载了PyTesser并将其压缩.

我在pytesser_v0.0.1文件夹中并尝试在python解释器中运行示例用法代码:

from pytesser import *
print image_file_to_string('fnord.tif')
Run Code Online (Sandbox Code Playgroud)

和输出:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "pytesser.py", line 44, in image_file_to_string
    call_tesseract(filename, scratch_text_name_root)
  File "pytesser.py", line 21, in call_tesseract
    proc = subprocess.Popen(args)
  File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory
Run Code Online (Sandbox Code Playgroud)

注:我在Ubuntu 12.10Python 2.7.3

任何人都可以帮助我理解这个错误,我该怎么做才能解决它?

python ocr

5
推荐指数
1
解决办法
5491
查看次数

使图像中的文本更薄以用于 OCR

我正在 Ubuntu 上用 Python 制作一个自动文本识别脚本。

我正在使用Gocr并且识别渲染太低。

例子:

在此处输入图片说明

输出: _O4_4E34E_4_O4_

我想图像中的类型太粗了,所以我在问是否有办法使用 python 库或 linux 命令使其更薄。

ocr image-processing

5
推荐指数
1
解决办法
3059
查看次数

使用 Bazel 为 Android 编译 OpenSSL

我正在使用 bazel 为我的 Android 应用程序构建一个本机库。

我想像这样使用一些OpenSSL函数:

#include <jni.h>
#include <openssl/aes.h>
...
AES_encrypt(in, out, key);
Run Code Online (Sandbox Code Playgroud)

如何将 openssl 库添加到 bazel build ?

附属问题:我应该使用哪个存档?

openssl-1.1.0c.tar.gz
openssl-1.0.2j.tar.gz
openssl-1.0.1u.tar.gz
openssl-fips-2.0.13.tar.gz
openssl-fips-ecp-2.0.13.tar.gz
Run Code Online (Sandbox Code Playgroud)

我试过的

我下载了openssl-1.0.2j存档。并cc_library在我的BUILD文件中添加了一个条目。

cc_library(
    name = "openssl",
    srcs = glob([
         "openssl-1.0.2j/crypto/**/*.h",
         "openssl-1.0.2j/crypto/**/*.c"
         ]),
    includes = [
        "openssl-1.0.2j",
        "openssl-1.0.2j/crypto/",
        ],
    visibility = ["//visibility:public"],
)
Run Code Online (Sandbox Code Playgroud)

我有这个错误:

openssl-1.0.2j/crypto/dh/p512.c:60:24: fatal error: openssl/bn.h: No such file or directory
 #include <openssl/bn.h>
Run Code Online (Sandbox Code Playgroud)

但我不明白为什么这个代码试图包括文件,从openssl而它在openssl-1.0.2j/crypto/

openssl-1.1.0c

openssl-1.1.0c/include/openssl/e_os2.h:13:34: fatal error: openssl/opensslconf.h: No …
Run Code Online (Sandbox Code Playgroud)

c android openssl bazel

5
推荐指数
1
解决办法
700
查看次数

压缩TensorFlow模型

是否有一个可以压缩训练的TensorFlow权重的现成工具?

这种工具适用于Caffe模型(链接)

tensorflow

5
推荐指数
1
解决办法
1565
查看次数

mongodb聚合框架查询最大日期

我这样的记录很少

userid purchased  brand
1      2012-1-21  honda
1      2013-1-1   toyota
1      2013-2-30  mercedez

2      2013-1-1   honda
2      2012-1-1   toyota
2      2013-12-13 mercedez
Run Code Online (Sandbox Code Playgroud)

我想获取具有最大购买日期的用户记录。喜欢关注

1      2013-2-30  mercedez
2      2013-12-13 mercedez
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用 mongodb 聚合框架工作,但在正确查询时遇到问题。

db.carsrecord.aggregate([{"$match" :{"userid":{"$in":[1,2,3,11]}}} ,
    {"$group":{"_id": {"uid":"$userid"},timecreated:{"$max":"$purchased" }}} ])
Run Code Online (Sandbox Code Playgroud)

它会随着时间的推移返回正确的隐藏信息,但不会返回汽车品牌。

"result" : [
    {
        "_id" : {
            "uid" : 1
        },
        "timecreated" : ISODate("2013-10-03T20:01:45.366Z")
    }
],
"ok" : 1
Run Code Online (Sandbox Code Playgroud)

谢谢

mongodb aggregation-framework

4
推荐指数
1
解决办法
8274
查看次数

如何使div的宽度适合内容而不是窗口

在下面的代码中,如何使"#wrap"宽度适合其子宽度,而不是限制浏览器窗口界限?

HTML

<div id="wrap">WRAP
    <div id="menu">MENU</div>
    <div id="large-content">LARGE CONTENT</div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

#wrap{background: #eee;}
#large-content{background: #f1c40f; width: 1000px; height: 300px}
#menu{background: #2c3e50; width: 100%; height: 50px}
Run Code Online (Sandbox Code Playgroud)

的jsfiddle

https://jsfiddle.net/67egnpho/1/

html css

4
推荐指数
1
解决办法
1016
查看次数

计算变换后关键点的新坐标

a在本例中,经过b变换 M (逆时针旋转 40 度)后,如何获取点的新坐标?

import cv2

cap = cv2.VideoCapture("http://i.imgur.com/7G91d2im.jpg")
a, b = (100, 100), (200, 200)

if cap.isOpened():
    ret, im = cap.read()
    rows, cols = im.shape[:2]

    im_keypoints = im.copy()
    for point in [a, b]:
        cv2.circle(im_keypoints, point, 6, (0, 0, 255), -1)
    cv2.imwrite("im_keypoints.jpg", im_keypoints)

    M = cv2.getRotationMatrix2D((cols / 2, rows / 2), 40, 1)
    im_rotated = cv2.warpAffine(im, M, (cols, rows))

    cv2.imwrite("im_rotated.jpg", im_rotated)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 在此输入图像描述

opencv coordinate-transformation

4
推荐指数
1
解决办法
2314
查看次数

如何在对象列表中使用str.join()

class A:
    def __init__(self, text):
        self.text = text

    def __repr__(self):
        return self.text

    def __str__(self):
        return self.text

    def __add__(self, other):
        return str(self) + other

    def __radd__(self, other):
        return other + str(self)
Run Code Online (Sandbox Code Playgroud)

我希望A对象列表与str.join() "可连接" .我应该采用哪种特殊方法来实现这一目标?

当然,我可以首先提取一个文本列表然后加入它,但这不是我想要的.

b = A('Hello')
c = A('World')
l = [b, c]

print b, c
print l
print b + ' ' + c
print ' '.join(l) # <- Error here

Hello World
[Hello, World]
Hello World
Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

python

4
推荐指数
1
解决办法
171
查看次数

在每N个时期结束时保存模型权重

我正在训练NN,并希望在预测阶段每N个时期保存模型权重.我提出这个草案代码,它的灵感来自于@grovina 在这里的回应.请你提出建议吗?提前致谢.

from keras.callbacks import Callback

class WeightsSaver(Callback):
    def __init__(self, model, N):
        self.model = model
        self.N = N
        self.epoch = 0

    def on_batch_end(self, epoch, logs={}):
        if self.epoch % self.N == 0:
            name = 'weights%08d.h5' % self.epoch
            self.model.save_weights(name)
        self.epoch += 1
Run Code Online (Sandbox Code Playgroud)

然后将其添加到fit调用:每5个时期保存一次权重:

model.fit(X_train, Y_train, callbacks=[WeightsSaver(model, 5)])
Run Code Online (Sandbox Code Playgroud)

python callback keras tensorflow

3
推荐指数
1
解决办法
6812
查看次数