Install
openclaw skills install western-blot-quantifierAutomatically identify Western Blot gel bands, perform densitometric analysis, and calculate normalized values relative to loading controls (GAPDH, β-actin,...
openclaw skills install western-blot-quantifierAutomatically identify Western Blot gel bands, perform densitometric analysis, and calculate normalized values relative to loading controls.
# Call in Python
from skills.western_blot_quantifier.scripts.main import WesternBlotQuantifier
# Create analyzer
analyzer = WesternBlotQuantifier()
# Analyze single image
result = analyzer.analyze(
image_path="path/to/wb_image.png",
reference_bands=["GAPDH"], # Loading control band names
target_bands=["p53", "Bcl-2"], # Target protein band names
lane_positions=[0.2, 0.4, 0.6, 0.8] # Lane positions (relative to image width)
)
print(result.summary())
result.save("output/quantification_results.csv")
python -m skills.western_blot_quantifier.scripts.main \
--input path/to/wb_image.png \
--reference GAPDH \
--targets p53,Bcl-2 \
--lanes 4 \
--output results.csv
| Parameter | Description | Default |
|---|---|---|
image_path | Gel image path | Required |
reference_bands | Loading control protein name list | ["GAPDH"] |
target_bands | Target protein name list | [] |
lane_positions | Lane position list | Auto-detect |
threshold | Band detection threshold | 0.1 |
background_correction | Background correction method | "rolling_ball" |
Lane,Protein,Raw_Intensity,Background,Corrected_Intensity,Normalized_to_Reference
1,GAPDH,125000.5,5000.2,120000.3,1.00
1,p53,85000.2,3000.1,82000.1,0.68
1,Bcl-2,62000.8,2500.5,59500.3,0.50
2,GAPDH,118000.3,4800.2,113200.1,1.00
...
{
"raw_data": DataFrame, # Raw optical density data
"normalized_data": DataFrame, # Normalized data
"band_regions": List[Dict], # Detected band region coordinates
"statistics": Dict, # Statistical analysis results
"figures": Dict # Visualization chart paths
}
numpy>=1.21.0
opencv-python>=4.5.0
pandas>=1.3.0
matplotlib>=3.4.0
scipy>=1.7.0
scikit-image>=0.18.0
pip install -r requirements.txt
from skills.western_blot_quantifier.scripts.main import WesternBlotQuantifier
analyzer = WesternBlotQuantifier()
# Analyze 4-lane Western Blot results
result = analyzer.analyze(
image_path="experiment_data/wb_gel.png",
reference_bands=["GAPDH"],
target_bands=["p53", "p21"],
lane_count=4
)
# View normalized results
print(result.normalized_data)
# Save charts
result.save_figures("output/")
import glob
analyzer = WesternBlotQuantifier()
for image_path in glob.glob("experiments/*.png"):
result = analyzer.analyze(
image_path=image_path,
reference_bands=["β-actin"],
target_bands=["Target_Protein"],
lane_count=6
)
result.save(f"output/{Path(image_path).stem}_results.csv")
OpenClaw Skills
| Risk Indicator | Assessment | Level |
|---|---|---|
| Code Execution | Python/R scripts executed locally | Medium |
| Network Access | No external API calls | Low |
| File System Access | Read input files, write output files | Medium |
| Instruction Tampering | Standard prompt guidelines | Low |
| Data Exposure | Output files saved to workspace | Low |
# Python dependencies
pip install -r requirements.txt