有些应用程序可以扫描屏幕并实时检测事物。例如,macOS预装了应用程序“ Digital Color Meter”。我可以移动光标,应用程序会立即检测到光标周围区域中的颜色。所以我的问题是,我该怎么做?如何“扫描”屏幕并实时检测所选区域中的对象或颜色?我找不到解决方法。
答案 0 :(得分:1)
数字色度计仅捕获屏幕的一个小方块。如果您只需要这些,请尝试CGDisplayCreateImageForRect
,看看它是否足够快。
如果这还不够快,请查看CGDisplayStreamCreate
或CGDisplayStreamCreateWithDispatchQueue
开头的class Product(models.Model):
destination = models.CharField(max_length=255, default='')
title = models.CharField(max_length=255, default='')
slug = models.SlugField(null=True, blank=True, unique=True, max_length=255, default='')
description = models.TextField(max_length=2000, default='')
link = models.TextField(max_length=500, default='')
ptags = TaggableManager()
image = models.ImageField(max_length=500, default='images/zero-image-found.png')
timestamp = models.DateTimeField(auto_now=True)
def get_absolute_url(self):
return reverse('experience',
kwargs={'slug': self.slug})
def save(self, *args, **kwargs):
if not self.id:
self.slug = slugify(self.title)
super(Product, self).save(*args, **kwargs)
def __str__(self):
return self.destination
函数。这些功能比CGDisplayStream
复杂得多,您必须了解CGDisplayCreateImageForRect
才能从IOSurfaceRef
获取像素数据。