Counting section handle in TWIG with weighted search plugin
You can search each section separately, count the totals of each and then merge them back together to form your full results.

{# Search each section separately #}
{% set query = craft.request.getParam('query') %}
{% set mapMarkerResults = craft.weightedSearch.substringSearch(query, ['mapMarker']) %}
{% set blogResults = craft.weightedSearch.substringSearch(query, ['blog']) %}

{# Merge the two sections' results together #}
{% set fullResults = mapMarkerResults|merge(blogResults) %}


Because Twig's |merge filter will add all the blogResults after mapMarkerResults the sort order will be wrong. Using the SuperSort plugin (version 1.2.0 supports Craft 2) you can fix that.

{# Use SuperSort's rsortAs method to sort the results by Weighted Search's score in descending order #}
{% set fullResults = fullResults|supersort('rsortAs', '{score}') %}


Now you can handle the output.

There's {{ blogResults|length }} results from the Blog section.
There's {{ mapMarkerResults|length }} results from the Map Marker section.

{% for searchResult in fullResults %}
    {{ searchResult.title }}
{% endfor %}


Note: SuperSort might not sort exactly the same as Weighted Search. They will correctly be sorted by score in descending order, but it might not break ties the same way (e.g. two entries with a score of 1). If it's important for the search results to be in exactly the same order as Weighted Search you should run the search again. This is obviously more server intensive and I wouldn't recommend it as it'll slow down your page loads.

{% set mapMarkerResultsCount = craft.weightedSearch.substringSearch(query, ['mapMarker'])|length %}
{% set blogResultsCount = craft.weightedSearch.substringSearch(query, ['blog'])|length %}
{% set fullResults = craft.weightedSearch.substringSearch(query, ['people', 'blog']) %}