我在图像分析方面完全是新手,已经尝试了很多ImageJ或QuPath,但不幸的是我找不到合适的方法。下面是一个我想量化的图像示例:
有没有人推荐我应该使用哪个软件,或者我如何量化那些小“点”,也能找到它们的位置?
我用ImageJ试过了,但图像质量太差了,不允许使用阈值…
有了阈值,似乎不可能只量化“小点”的…
亲切的问候
发布于 2021-04-16 11:46:50
您可以使用OpenCV
以简单的方式解决此问题,也可以使用this one等更复杂的方法进一步解决此问题。
import cv2
import numpy as np
img = cv2.imread('img.png')
mask = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
th = 35
mask[mask<th] = 0
mask[mask>0] = 255
mask = np.stack([mask, mask, mask], axis=2)
result = np.hstack((img, mask))
cv2.namedWindow("peaks", cv2.WINDOW_NORMAL)
cv2.imshow("peaks", result)
cv2.waitKey(0)
cv2.destroyAllWindows()
发布于 2021-09-23 13:37:15
我发现cv2既复杂又慢。我会这样做:
from osgeo import gdal
thresh = 100
raster = gdal.Open(r'image.jpg')
# Extract raster band (each band is a primary colour)
img = raster.GetRasterBand(1).ReadAsArray(x_start,y_start,x_end,y_end) # reading the image on a specific window, keep empty for whole image.
binary_img = img > thresh
Gdal是一个很棒的软件包,但它有很多依赖项,而且安装起来有点困难,尤其是在windows上。
https://stackoverflow.com/questions/67116571
复制相似问题