Tag: python

旋转图像并裁剪黑色边框

我的应用程序:我想旋转一个图像(使用OpenCV和Python) 目前,我已经开发了旋转input图像的下面的代码,用黑色边框填充它,给我答:我想要的是B-旋转图像中最大的可能区域裁剪窗口。 我称之为轴alignment边界框。 这与旋转和裁剪基本相同,但是我无法得到有关该问题的答案。 此外,答案显然只适用于方形图像。 我的图像是矩形的。 代码给A: import cv2 import numpy as np def getTranslationMatrix2d(dx, dy): """ Returns a numpy affine transformation matrix for a 2D translation of (dx, dy) """ return np.matrix([[1, 0, dx], [0, 1, dy], [0, 0, 1]]) def rotateImage(image, angle): """ Rotates the given image about it's centre """ image_size = […]

什么是最简单的方法来在二维扩展一个numpy数组?

我有一个2d数组,看起来像这样: XX xx 什么是最有效的方式来添加一个额外的行和列: xxy xxy yyy 对于奖励积分,我想也能够淘汰单行和列,所以例如在下面的matrix,我想能够淘汰所有的只剩下x的 – 特别是我试图同时删除第n行和第n列 – 我希望能够尽快做到这一点: xxaxx xxaxx aaaaa xxaxx xxaxx

Python基于磁盘的字典

我正在运行一些dynamic编程代码(试图蛮力反驳Collat​​z猜想= P),我正在使用一个字典来存储我已经计算的链的长度。 很明显,它在某个时候耗尽了内存。 是否有任何简单的方法来使用dict一些变种,当它的空间不足时,它将自己的部分页面分页到磁盘? 显然它会比内存中的字典慢,它可能最终会吃掉我的硬盘空间,但是这可能适用于其他问题并不那么徒劳。 我意识到一个基于磁盘的字典几乎是一个数据库,所以我手动实现一个使用sqlite3,但我没有以任何聪明的方式做,并一次查找数据库中的每个元素…这是慢了大约300倍。 最聪明的办法就是创build自己的一套词典,一次只保留一个词,然后用一些有效的方式把它们分开。

numpy中的“isnotnan”function,这可以更pythonic?

我需要一个从数组中返回非NaN值的函数。 目前我正在这样做: >>> a = np.array([np.nan, 1, 2]) >>> a array([ NaN, 1., 2.]) >>> np.invert(np.isnan(a)) array([False, True, True], dtype=bool) >>> a[np.invert(np.isnan(a))] array([ 1., 2.]) Python:2.6.4 numpy:1.3.0 请分享,如果你知道更好的方法,谢谢

替代Python 3中的execfile?

Python 2具有内置的函数execfile ,它在Python 3.0中被删除。 这个问题讨论了Python 3.0的替代方法,但自从Python 3.0以来,已经做了一些相当大的改变 。 Python 3.2的execfile和未来的Python 3.x版本的最佳select是什么?

总和/平均Python中对象列表的属性

可以说我有C类的属性a 。 从Python的C列表中获得a的总和的最好方法是什么?

如何向初学者解释int()函数

我正在辅导一个邻居的孩子,我们在使用input()(它返回一个stringint()之前探究了int()函数。 我们尝试了以下内容: int(5) int(5.5) int('5') int('5.5') 前三名按照预期返回了5 ; 最后一个抛出了错误 ValueError:无效文字为int()与基地10:'5.5' 鉴于前三行的行为​​,我如何解释这个错误到一个14岁(背景=说4种语言,但math不是那么热)? 更新 C#展品相同的行为: Convert.ToInt32("5.5"); 抛出错误 inputstring的格式不正确。

在Python中,使用列表parsing还是for-each循环更好?

以下哪个更好用,为什么? 方法1: for k, v in os.environ.items(): print "%s=%s" % (k, v) 方法2: print "\n".join(["%s=%s" % (k, v) for k,v in os.environ.items()]) 我倾向于把第一个理解为更容易理解,但这可能只是因为我是Python新手,列表理解对我来说还是有些陌生的。 第二种方式认为是更多Pythonic? 我假设没有性能差异,但我可能是错的。 这两种技术的优点和缺点是什么? (代码取自潜入Python )

sqlite3.OperationalError:无法打开数据库文件

在Django中设置服务器时出现此错误。 这是sqlite3这意味着它应该创build.db文件,但似乎并没有这样做。 我已经规定SQLite作为后端和一个绝对的文件path放在哪里,但没有运气。 这是一个错误还是我做错了什么? (只是想,是在Ubuntu中指定的绝对文件path?) 这是我的settings.py文件的开始: # Django settings for OmniCloud project. DEBUG = True TEMPLATE_DEBUG = DEBUG ADMINS = ( # ('Your Name', 'your_email@example.com'), ) MANAGERS = ADMINS DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 'NAME': '~/Harold-Server/OmniCloud.db', # Or path to database file if using sqlite3. […]

你如何在Python中发送HTTP Get Web Request?

我无法将数据发送到网站并在Python中获得响应。 我曾经见过类似的问题,但是他们没有一个能够实现我的目标。 如果你可以阅读这个,你可以看到我正在尝试在Python(这是它在C#中) static void Request(Uri selectedUri) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(selectedUri); request.ServicePoint.BindIPEndPointDelegate = BindIPEndPointCallback; request.Method = "GET"; request.Timeout = (int)Timeout.TotalMilliseconds; request.ReadWriteTimeout = (int)Timeout.TotalMilliseconds; request.CachePolicy = CachePolicy; request.UserAgent = UserAgent; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { using (StreamReader responseReader = new StreamReader(response.GetResponseStream())) { string responseText = responseReader.ReadToEnd(); File.WriteAllText(UrlFileName, responseText.Trim(), Encoding.ASCII); } } } 在上面的代码中,build立了一个Http请求,将响应stream中发现的所有内容都发送给在UrlFileName中find的url。 这里是我尝试在Python中重新创build它: […]