小编use*_*351的帖子

在Opencv Python中获取轮廓区域?

我使用自适应阈值技术来创建如下图片:

在此输入图像描述

我使用的代码是:

image = cv2.adaptiveThreshold(image, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY_INV, 45, 0)
Run Code Online (Sandbox Code Playgroud)

然后,我使用此代码来获取轮廓:

cnt = cv2.findContours(image, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)[0]
Run Code Online (Sandbox Code Playgroud)

我的目标是使用外部轮廓内的所有像素生成蒙版,因此我想将对象内的所有像素填充为白色.我怎样才能做到这一点?

我已经尝试了下面的代码来创建一个掩码,但是在应用自适应阈值后,生成的掩码似乎与图像没有什么不同

mask = np.zeros(image.shape[:2], np.uint8)
cv2.drawContours(mask, cnt, -1, 255, -1)
Run Code Online (Sandbox Code Playgroud)

python opencv image-processing opencv-contour

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

Sqlalchemy按列表中的字段过滤但保留原始订单?

我有一个像这样的鞋子模型:

class Shoe(db.Model):
id = db.Column(db.Integer, primary_key = True)
asin = db.Column(db.String(20), index = True)
Run Code Online (Sandbox Code Playgroud)

我有一个像ids = [2,1,3]的id列表,当我在Shoe模型上查询结果在'ids'列表中有id时,我想回来:[{id:2,asin:" 111"},{id:1,asin:"113"},{id:3,asin:"42"}]但问题是使用以下查询语句不保留原始顺序,结果将会到来随机回来.如何保持我过滤的列表顺序?

不正确的一个: Shoe.query.filter(Shoe.id.in_(my_list_of_ids)).all()

python sqlalchemy flask-sqlalchemy

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

Scrapy抓住多个班级的div?

我试图用类来抓住div:'产品'.问题是,一些带有"产品"类的div也有"产品小"这个类.所以当我使用时xpath('//div[@class='product']'),它只捕获一个类而不是多个的div.我怎么能用scrapy做到这一点?

例:

  • 渔获: <div class='product'>
  • 不抓住: <div class='product product-small'>

html python xpath scrapy web-scraping

11
推荐指数
2
解决办法
8024
查看次数

是否可以使用Django和Node.Js?

我有一个django后端设置用户登录和用户管理,以及我的整个模板集,网站的访问者使用它来显示html文件.但是,我正在尝试为我的网站添加实时功能,我在Node.Js中找到了一个完美的库,允许两个用户输入文本框并在其屏幕上显示文本.是否有可能合并两个后端?

django node.js

8
推荐指数
1
解决办法
9410
查看次数

Numpy Broadcast执行欧几里德距离矢量化

我有2 x 4和3 x 4的矩阵.我想找到跨行的欧几里德距离,最后得到一个2 x 3矩阵.这是带有一个for循环的代码,它计算针对所有b行向量中每个行向量的欧氏距离.如何在不使用for循环的情况下执行相同的操作?

 import numpy as np
a = np.array([[1,1,1,1],[2,2,2,2]])
b = np.array([[1,2,3,4],[1,1,1,1],[1,2,1,9]])
dists = np.zeros((2, 3))
for i in range(2):
      dists[i] = np.sqrt(np.sum(np.square(a[i] - b), axis=1))
Run Code Online (Sandbox Code Playgroud)

python numpy machine-learning vectorization

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

Django密码更改视图表单

我还是Django的新手,关于如何使用内置视图工作有一些问题.我注意到djang带有django.contrib.auth.views.password_change的内置密码更改视图.此视图在模板的背景中显示管理站点,而我想提供自己的css /模板,但保留该视图的形式和功能.我该怎么做?你能把东西传递到urls.py吗?

r'password_change/$', 'django.contrib.auth.views.password_change')
Run Code Online (Sandbox Code Playgroud)

喜欢自定义模板?我不确定这样做的正确方法.

django change-password

6
推荐指数
2
解决办法
8268
查看次数

Django 在序列化器的自定义字段上执行 Rest Order?

我正在尝试使用 Django Rest 根据自定义字段的排序返回模型的 json 表示形式,该自定义字段未附加到模型,但附加到序列化器。我知道如何使用模型特定字段执行此操作,但是当该字段仅在序列化器类中时,如何使用 django rest 返回排序?我想返回按“分数”排序的图片列表。谢谢!

------视图.py

class PicList(generics.ListAPIView):
    queryset = Pic.objects.all()
    serializer_class = PicSerializerBasic
    filter_backends = (filters.OrderingFilter,)
    ordering = ('score')
Run Code Online (Sandbox Code Playgroud)

------序列化器.py

class PicSerializer(serializers.ModelSerializer):
    userprofile = serializers.StringRelatedField()
    score = serializers.SerializerMethodField()

    class Meta:
        model = Pic
        fields = ('title', 'description', 'image', 'userprofile', 'score')
        order_by = (('title',))

    def get_score(self, obj):
        return Rating.objects.filter(picc=obj).aggregate(Avg('score'))['score__avg']
Run Code Online (Sandbox Code Playgroud)

python django serialization django-rest-framework

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

烧瓶和SQLAlchemy:处理会话

我最近开始为我的项目使用Flask + Sqlalchemy,并且在关闭服务器一天后发现500个错误。我认为这是由于数据库会话超时导致的,但是我不确定。我们应该为每个请求创建一个新会话,还是Flask应用程序启动时一个会话?我在我的app.py顶部有这个

from sqlalchemy import Column, ForeignKey, Integer, String, create_engine, func, cast, Float 
from sqlalchemy.ext.declarative import declarative_base 
from sqlalchemy.orm import relationship,scoped_session,sessionmaker,aliased
engine = createengine(DB_PATH) 
Session = sessionmaker(bind=engine) 
session = Session() 
app = Flask(name_)
Run Code Online (Sandbox Code Playgroud)

然后,对于视图中的所有查询,我都会执行以下操作:“ session.query(Table)...”这是错误的吗,我应该为每个端点调用都建立一个会话吗?

sqlalchemy flask

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

在numpy数组中按值获取前k个数字的索引?

假设有一个 numpy 数组,如下所示:

import numpy as np
a = array([[1,2,3],[4,3,1]]) 
Run Code Online (Sandbox Code Playgroud)

并且您想返回前 3 个数字。您可以通过以下方式找到最大值:

i,j = np.unravel_index(a.argmax(), a.shape)
Run Code Online (Sandbox Code Playgroud)

但是对于第 2 个和第 3 个最高值的索引,您如何找到它们?我能想到的唯一选择是将存储在最大索引处的值设置为 0,然后再次运行该过程。一定有更好的方法吧?

以下问题的答案是:(1,0)、(0,2)、(1,1)

python arrays numpy

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

使用Python在世界地图上绘制点

我想创建一个地震世界地图应用程序,它从us.gov文本文件中提取数据,并在地图上一次显示一个地震点.我知道如何提取和解析数据,但我正在努力如何在地图上绘制点.谁能告诉我他们如何用Python做到这一点?我以前用Java做过它,使用一个名为Zen.Java的导入类,是否有Python的等价物?

python plot

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

如何计算列表中唯一列表的数量?

我尝试过使用Counter和itertools,但由于列表不可用,它们不起作用.

我的数据如下:[[1,2,3],[2,3,4],[1,2,3]]

我想知道列表[1,2,3]出现两次,但我无法弄清楚如何做到这一点.我想把每个列表转换成一个元组,然后用它进行散列.有没有更好的办法?

python list

0
推荐指数
1
解决办法
1552
查看次数