图像质量改善MCP服务器
该项目提供了一套用于图像大小调整、裁剪、格式转换和质量分析的工具,作为MCP(模型上下文协议)服务器构建。
以下是中所有功能的列表 main.py,并对每一项进行简要说明。
______________________________________________________________________
工具函数
validate_image_path(路径:str)->bool
验证给定路径是否指向具有支持扩展名的现有图像文件。
get_image_format_from_extension(扩展名:str)->str
返回给定文件扩展名的PIL图像格式字符串(例如“JPEG”、“PNG”)。
calculate_blur_metric(图像数组:np.ndarray)->浮点
使用拉普拉斯方差计算图像的模糊度量(值越高,图像越清晰)。
calculate_noise_metric(图像数组:np.ndarray)->浮点
使用高斯模糊后的局部标准偏差估计图像中的噪声水平。
calculate_brightness_contrast(图像:image.image)->元组\[float,float\]
计算图像的亮度和对比度。对于彩色图像,使用亮度和加权标准偏差。
analyze_image_quality(image_path:str)->Dict\[str,Any\]
对图像质量进行全面分析,包括锐度、噪声、亮度和对比度,并返回质量评估。
______________________________________________________________________
MCP工具功能
这些函数作为MCP工具公开,可以通过MCP服务器调用。
resize_image(image_path:str,width:int,height:int,output_path:Optional\[str\]=None,maintain_aspect_ratio:bool=True,resample_method:str=“LANCZOS”)->Dict\[str,Any>
将单个图像调整为指定尺寸,可选择保持纵横比并选择重采样方法。
batch_resize_images(输入目录:str,宽度:int,高度:int,输出目录:可选\[str\]=无,maintain_aspect_ratio:bool=真,重采样方法:str=“LANCZOS”,file_pattern:str=“\*”)->Dict\[str,Any>
使用输出目录、纵横比和文件模式选项,将目录中的所有图像批量调整为指定尺寸。
crop_image(image_path:str,x:int,y:int,width:int,height:int,output_path:Optional\[str\]=None)->Dict\[str,Any>
将图像裁剪到由(x,y,宽度,高度)定义的指定矩形区域。
convert_image_format(image_path:str,target_format:str,output_path:Optional\[str\]=None,quality:int=95)->Dict\[str,Any>
使用可选的输出路径和质量设置将图像转换为其他格式(例如JPEG、PNG、WEBP)。
analyze_single_image_quality(image_path:str)->Dict\[str,Any>
分析单个图像的质量,返回指标和质量评估。
batch_analyze_image_quality(目录路径:str,文件模式:str=“\*”,保存报告:bool=False,报告路径:可选\[str\]=无)->字典\[str,任意>
分析目录中所有图像的质量,返回摘要和详细结果。可选地将报告保存为JSON。
smart_crop_image(image_path:str,target_width:int,target_height:int,output_path:可选\[str\]=无,focus_point:可选\[Tuple\[int,int\]\]=无)->Dict\[str,Any>
执行智能裁剪,将图像调整到目标尺寸,可选择聚焦于特定点以保留重要内容。
______________________________________________________________________
入口点
如果作为主模块执行,该脚本将运行MCP服务器。
